return;
}
if (isNaN($(X).val()) || isNaN($(Y).val())) {
alert(‘横纵的单元格中之能输入数字。’);
return;
}
else if ($(X).val() < 4 || $(Y).val() < 4 || $(X).val() >= 10 || $(Y).val() >= 10) {
alert(‘横纵的数量不能小于 4,且不能大于 9。’);
return;
}
startGame();
});
});
$()就是使用的JQuery库。基本上,这里用到的选择器主要有:$(“#xxx”) 第一个id为xxx的元素;$(“.xxx”) 样式为xxx的所有元素。
step是我定义的变量,用户记录用户按了多少次。
在每次用户按了开始按钮后,先把原来画的按钮清掉(如果有的话)。用JQuery很容易实现,用样式去匹配就可以了:
$(“.darkButton”).remove();
$(“.lightButton”).remove();
$(“.return”).remove();
然后就是生成一堆按钮了。这个很常规,不需要做什么解释:
var grid = document.getElementById(‘content’);
for (var i = 1; i <= x; i++) {
for (var j = 1; j <= y; j++) {
var button = createButton(‘bt’ + i + j);
grid.appendChild(button);
}
var ret = document.createElement(‘br’);
ret.className = “return”;
grid.appendChild(ret);
}
createButton是一个方法,用于生成和设置html的元素。我这里button的id命名采用bt+行号+列号,这样方便知道以后按的是哪个按钮。为了方便期间,我规定行号和列号必须小于10(好偷懒啊),这也样直接取倒数第一个或第二个字符就知道坐标值了。
程序最重要的逻辑:按某个按钮改变自己和相邻按钮的状态。我们只需要把坐标取出来,再改变上下左右的按钮状态就行了(注意越界情况的判断),这里写一个判断吧:
$(“.darkButton”).click(function () {
changeButton(this.id);
var x = this.id.charAt(2);
var y = this.id.charAt(3);










