我試圖做簡單的XO遊戲,它似乎工作得很好,但當我到達3「Os」 函數調用(),它不會給我你在if語句 鬆散,它確實給你贏了,我達到3「Xs」。任何人都可以告訴我爲什麼這個jquery代碼不響應正確嗎?
<script type="text/javascript" src="jquery.js" ></script>
<script type="text/javascript" >
function call() {
var x = Math.floor((Math.random() * 9) + 1);
if ($('#td' + x).text() === "x" || $('#td' + x).text() === "o") {
call();
}
else if (check() === true) {
$('div').text("You win ");
return false;
}
else if (checkLoose() === true) {
$('p').text("You Loose ");
return false;
}
else
$('#td' + x).text("o");
}
function win(as, bs, cc) {
return ($('#td'+as).text() === "x" && $('#td'+bs).text() === "x" && $('#td'+cc).text() === "x") ;
}
function check(){
if (win(1, 2, 3) || win(1, 4, 7) || win(4, 5, 6) || win(7, 8, 9) || win(2, 5, 8) || win(3, 6, 9) || win(1, 5, 9) || win(3, 5, 7) === true)
return true;
}
function checkLoose() {
if (lose(1, 2, 3) || lose(1, 4, 7) || lose(4, 5, 6) || lose(7, 8, 9) || lose(2, 5, 8) || lose(3, 6, 9) || lose(1, 5, 9) || lose(3, 5, 7) === true) {
return true;
}
}
function lose(as, bs, cc) {
return ($('#td' + as).text() === "o" && $('#td' + bs).text() === "o" && $('#td' + cc).text() === "o");
}
function dsd(sad) {
if ($('#td' + sad).text() === "x" || $('#td' + sad).text() === "o")
return false;
else if (check() === true)
return false;
else if (checkLoose() === true) {
return false;
}
else {
$("#td" + sad).text("x");
call();
}
}
$(document).ready(function(){
$("td").hover(function() {
$(this).css("background-color", "yellow");
}, function() {
$(this).css("background-color", "white");
});
});
</script>
</head>
<body>
<center>
<h1 >" X ,O Game "</h1><br />
<div></div>
<p></p>
<table>
<tr>
<td id="td1" onclick="dsd(1);" ></td>
<td id="td2" onclick="dsd(2);"></td>
<td id="td3" onclick="dsd(3);"></td>
</tr>
<tr>
<td id="td4" onclick="dsd(4);"></td>
<td id="td5" onclick="dsd(5);"></td>
<td id="td6" onclick="dsd(6);"></td>
</tr>
<tr>
<td id="td7" onclick="dsd(7);"></td>
<td id="td8" onclick="dsd(8);"></td>
<td id="td9" onclick="dsd(9);"</td>
</tr>
</table>
</center>
'checkloose'必須是'checkLoose'大寫 – mgraph 2012-03-29 22:52:41
需要發佈那些函數做什麼和任何關聯的HTML。 – j08691 2012-03-29 22:58:43
[「Lose」](http://dictionary.reference.com/browse/lose)不拼寫[「Loose」](http://dictionary.reference.com/browse/loose)...查找它們。 – Sparky 2012-03-29 23:28:18