gpt4 book ai didi

javascript - 使用 JavaScript 进行井字游戏

转载 作者:行者123 更新时间:2023-11-28 09:19:50 25 4
gpt4 key购买 nike

我正在使用 html、css 和 JavaScript 编写一个 tic tac toe 游戏。我创建了按钮来从 markbox(cell) 函数和 deres 函数(称为 Wining_condition)获取输入,该函数检查获胜条件游戏。

在我的代码中,它没有正确检查 winning_condition 是否遇到问题?

这是我的代码

<小时/>
<html>
<head>
<title>TIC TAC TOE</title>
<script type="text/javascript">
var cell;
var symbol = "X";
function markbox(cell)
{
if (cell.value == " ")
{
cell.value = symbol;
if (symbol == "X")
symbol = "O";
else
symbol = "X";
}
//else
//{
//alert("This square is occupied");
//}
if (winning_condition())
{
alert ("You win!");
return;
}
else if(!winning_condition())
{
alert("You loose!");
}
else
{
alert("Draw!")
}
}
function winning_condition()
{
if(document.f1.b00.value==symbol && document.f1.b01.value==symbol && document.f1.b02.value==symbol)
return true;
else if(document.f1.b10.value==symbol && document.f1.b11.value==symbol && document.f1.b12.value==symbol)
return true;
else if(document.f1.b20.value==symbol && document.f1.b21.value==symbol && document.f1.b22.value==symbol)
return true;
else if(document.f1.b00.value==symbol && document.f1.b10.value==symbol && document.f1.b20.value==symbol)
return true;
else if(document.f1.b01.value==symbol && document.f1.b11.value==symbol && document.f1.b21.value==symbol)
return true;
else if(document.f1.b02.value==symbol && document.f1.b12.value==symbol && document.f1.b22.value==symbol)
return true;
else if(document.f1.b00.value==symbol && document.f1.b11.value==symbol && document.f1.b22.value==symbol)
return true;
else if(document.f1.b02.value==symbol && document.f1.b11.value==symbol && document.f1.b20.value==symbol)
return true;
}
function clearBtn()
{
status = "X"
document.f1.b00.value=" ";
document.f1.b01.value=" ";
document.f1.b02.value=" ";
document.f1.b10.value=" ";
document.f1.b11.value=" ";
document.f1.b12.value=" ";
document.f1.b20.value=" ";
document.f1.b21.value=" ";
document.f1.b22.value=" ";
}
</script>
</head>
<body>
<div align="center">
<h1>Tic Tac Toe</h1>
<form name="f1">
<input type="button" name="b00" value=" " onclick="markbox(this)"/>
<input type="button" name="b01" value=" " onclick="markbox(this)"/>
<input type="button" name="b02" value=" " onclick="markbox(this)/></br>
<input type="button" name="b10" value=" " onclick="markbox(this)"/>
<input type="button" name="b11" value=" " onclick="markbox(this)"/>
<input type="button" name="b12" value=" " onclick="markbox(this)"/></br>
<input type="button" name="b20" value=" " onclick="markbox(this)"/>
<input type="button" name="b21" value=" " onclick="markbox(this)"/>
<input type="button" name="b22" value=" " onclick="markbox(this)"/>
</br></br></br>
<input type="reset" value="RESET GAME" onclick="clearBtn()">
</form>
</div>
</body>

最佳答案

首先,您没有正确关闭 HTML:

onclick="markbox(this)/>

需要:

onclick="markbox(this)" />

(注意末尾的“)。

问题似乎是您在单击其中一个按钮时正在重置符号 var。您总是会检查错误的符号来获胜。创建一个 var last_clicked 并在您的获胜条件中使用它。

尝试使用此代码:

http://jsfiddle.net/wG9G5/1/

关于javascript - 使用 JavaScript 进行井字游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15152494/

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