gpt4 book ai didi

javascript - 元素在第一次单击时发生更改,但在第二次单击时不会恢复

转载 作者:行者123 更新时间:2023-11-28 14:48:33 24 4
gpt4 key购买 nike

第一次单击显示“X”,然后更改为“O”。但它不会再变成“X”

我正在尝试用 javascript 制作 tic tac toe 游戏。

第一次单击显示“X”,然后第二次单击显示“O”,正如我所希望的那样。然而,在随后的点击中,仅显示“O”,即它不会变回“X”。

    function startGame(){                             
//To display whose turn it is
document.turn="X";
setMessage(document.turn + " gets to start");
}

function setMessage(msg){
//gets the message div and puts value = msg
document.getElementById("message").innerText= msg;
}

function nextMove(square){
square.innerText= document.turn;
switchTurn();
}

function switchTurn(){
if(document.turn="X"){
document.turn="O";
}else{
document.turn="X";
}
}
  <body onload="startGame();">                       
<div id="message">Messages will go here</div>
<table border=0>
<td>
<table border=1>
<tr>
<td class="box" onclick="nextMove(this);"></a></td>
<td class="box" onclick="nextMove(this);"></a></td>
<td class="box" onclick="nextMove(this);"></a></td>
</tr>
<tr>
<td class="box" onclick="nextMove(this);"></a></td>
<td class="box" onclick="nextMove(this);"></a></td>
<td class="box" onclick="nextMove(this);"></a></td>
</tr>
<tr>
<td class="box" onclick="nextMove(this);"></a></td>
<td class="box" onclick="nextMove(this);"></a></td>
<td class="box" onclick="nextMove(this);"></a></td>
</tr>
</table>
</td>
<td>
<table>
<tr>
<td><input type=text size=5 id="player1" value=0></td>
<td>Player1</td>
</tr>
<tr>
<td><input type=text size=5 id="player2" value=0></td>
<td>Player2</td>
</tr>
<tr>
<td><input type=text size=5 id="ties" value=0></td>
<td>Ties</td>
</tr>
</table>
</td>
</table>
</body>

最佳答案

您正在条件中进行分配。

function switchTurn(){
if(document.turn="X"){
document.turn="O";
} else {
document.turn="X";
}
}

当你的代码到达 if() 时,它会使 document.turn“X”并返回一个真值,然后立即转身并使其成为“O”。

你会想在那里使用===:

function switchTurn(){
if(document.turn==="X"){
document.turn="O";
} else {
document.turn="X";
}
}

关于javascript - 元素在第一次单击时发生更改,但在第二次单击时不会恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45420016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com