Я пытаюсь поиграть в крестики-нолики. Когда щелкают одно поле, я хочу, чтобы значение var XorO было равно X. Затем я хочу, чтобы значение XorO было равно O для следующего щелчка поля, и так далее. Ниже я включу код, который должен помочь вам лучше понять, чего я пытаюсь добиться.
HTML:
<!DOCTYPE html>
<head>
<title>tik-tak-toe</title>
<link rel="stylesheet" href="tik-tak-toe.css">
<script type="text/javascript" src="tik-tak-toe.js"></script>
</head>
<body>
<div id="squares">
<p id="topLeft" class="square" onclick="topLeft()"></p>
<p id="topCenter" class="square" onclick="topCenter()"></p>
</div>
</body>
JS:
var topLeftClicked=false;
var topCenterClicked=false;
var XorO="X";
function topLeft(){
if(!topLeftClicked){
topLeftClicked=true;
document.getElementById("topLeft").innerHTML=
XorO;
if(XorO=="X"){
XorO="O";
}
if(XorO=="O"){
XorO="X";
}
return XorO;
}
}
function topCenter(){
if(!topCenterClicked){
topCenterClicked=true;
document.getElementById("topCenter").innerHTML=
XorO;
if(XorO=="X"){
XorO="O";
}
if(XorO=="O"){
XorO="X";
}
return XorO;/*this last section of code with the if statements is meant to change the value of XorO between "X" and "O" every time a function is carried out, but needless to say it doesnt work*/
}
}
Это не код для всей моей игры в крестики-нолики, так как я еще не закончил. Этого должно быть достаточно, чтобы дать вам представление о том, как мой неопытный кодирующий мозг думает, что это должно работать. То, с чем я борюсь, - это изменение верного XorY между «X» и «Y» каждый раз, когда нажимается коробка (я пытаюсь закодировать игру в крестики-нолики). Я попытался сделать это собственной функцией, и как вы видите здесь, я пытался сделать это внутри выполняемой функции, но ни одна из них не может сделать это, поэтому другая функция распознает значение XorO как то, что я хочу. Пожалуйста, помогите!
Спасибо. Совет «прекратить использовать var» очень ценится. Код сработал.