感谢各位用户的帮助,我设法禁用了点击div并在使用$(".pos").addClass('already-played');
并在CSS中选择已经被选中后覆盖它们:
.already-played {
pointer-events: none;
}
我尝试将这个$(".pos").addClass('already-played');
添加到一堆函数中,以便在获胜或平局后尝试完全禁用该板,但它没有工作。例如,这里:
//if a row or column win occurs, return 1
if (rowComplete || colComplete) {
return value ? 1 : 0;
$(".pos").addClass('already-played');
}
}
//if a diagonal win occurs, return 1
if (diagComplete1 || diagComplete2) {
return value ? 1 : 0;
$(".pos").addClass('already-played');
}
}
//draw
if (allNotNull) {
return -1;
$(".pos").addClass('already-played');
}
我也试过这个功能:
function disableBoard() {
if ($("#status").text() != "") {
$(".pos").addClass('already-played');
}
}
这可以不执行任何操作,也可以在第一次访问后禁用点击次数。 Here's the fiddle。有什么想法吗?
答案 0 :(得分:1)
替换为
function updateMove() {
updateButtons();
var winner = getWinner(board);
if(winner==1 || winner==0 || winner==-1)
$(".pos").addClass("already-played")
$("#status").text(winner == 1 ? "Your computer won!" : winner == 0 ? "You won!" : winner == -1 ? "It's a draw!" : "");
}