这是关于How do I create turns in a Tic Tac Toe game? 我想添加一个选项,一旦点击一个框不应该被覆盖。我使用了下面的代码,并通过网上几次浏览了它,但似乎无法找出答案。现在突然制作所有盒子X而不是X,然后是O然后是X.不幸的是,我正在开发一个基于Web的编辑器,它不支持Jquery,我也无法编辑HTML。在井字游泳站停止覆盖
var turn = "X";
function next()
{
turn = turn === "X" ? "O" : "X";
}
function play() {
if (this.innerHTML === "")
{
this.innerHTML == turn;
next();}
}
function click()
{
if (this.id == "cell1")
{
document.getElementById("cell1").innerHTML= turn;
play();
}
else if (this.id == "cell2")
{
document.getElementById("cell2").innerHTML = turn;
play();
}
else if (this.id == "cell3")
{
document.getElementById("cell3").innerHTML = turn;
play();
}
else if (this.id == "cell4")
{
document.getElementById("cell4").innerHTML = turn;
play();
}
else if (this.id == "cell5")
{
document.getElementById("cell5").innerHTML = turn;
play();
}
else if (this.id == "cell6")
{
document.getElementById("cell6").innerHTML = turn;
play();
}
else if (this.id == "cell7")
{
document.getElementById("cell7").innerHTML = turn;
play();
}
else if (this.id == "cell8")
{
document.getElementById("cell8").innerHTML = turn;
play();
}
else if (this.id == "cell9")
{
document.getElementById("cell9").innerHTML =turn;
play();
}
}
document.getElementById("cell1").onclick = click;
document.getElementById("cell2").onclick = click;
document.getElementById("cell3").onclick = click;
document.getElementById("cell4").onclick = click;
document.getElementById("cell5").onclick = click;
document.getElementById("cell6").onclick = click;
document.getElementById("cell7").onclick = click;
document.getElementById("cell8").onclick = click;
document.getElementById("cell9").onclick = click;
我知道我被告知不要重复代码,但我对此很新颖。也许几个月的练习会让我充满信心 - 现在我发现它更清晰。
P.S:在尝试添加停止覆盖单元格的功能之前,它工作正常。在此之前的代码是:
var nextTurn = 'X';
function changeTurn(){
if(nextTurn == 'X'){
nextTurn = 'O';
} else {
nextTurn = 'X';
}
}
了新的选择,我已经改变nextTurn转向和changeTurn下一个 - 与帮助,从较早前的职位其他用户。
在'play()'函数 – SomeShinyObject 2013-05-10 04:14:46
嗨@Orangepill ..我已将语句更改为赋值,但在运行代码时它仍然给我X'es。你知道为什么吗?由于代码对我来说很有意义,所以我没有任何想法,但是我无论如何都是新手,因此需要专家意见。谢谢! – user221510 2013-05-10 04:35:25
我认为@Garath与此挂钩。如果之后仍然有问题,则可能需要尝试将play函数中的if语句中的===更改为a ==。我不知道如果一个空元素innerHTML属性为null或“”,但与双等于它不会影响哪一个。 – Orangepill 2013-05-10 04:40:05