我的X O游戏的JQuery代码在偷看innerhtml时遇到了一些麻烦?

时间:2012-03-29 17:15:59

标签: javascript jquery

  

可能重复:
  I want to check if $('#td1').text() === “x”?

我的X O游戏的Jquery代码在偷看innerhtml时遇到了一些麻烦? 我想检查innerHtml是否有X或O,所以我不能再添加任何其他东西,但它不起作用。它在添加检查代码后停止,我正在尝试做一个简单的X O游戏,以便更熟悉javascript和jquery。

我也不确定是否能用jQuery做到这一点。

<script type="text/javascript" >

    function ranFun() {
       return Math.floor((Math.random() * 9) + 1);
   }

   var a;

     function Elment(a) {         
         document.getElementById("td" + a).innerHTML = "O";
     }    

     function call() {
            var x = ranFun();
         switch (x) {
             case 1:case 2 :case 3: case 4 :case 5 : case 6 : case 7 : case 8 : case 9 :
                 Elment(x);
                 break;
             default:
                 break;
         }
     }

     function tdElm(c) {

         if ($('#td1').text() === "x" || $('#td1').text() == "o")
             return false;
         else {
             document.getElementById("td" + c).innerHTML = "x";
             call();
         }

   }

</script>

<BODY>

<center>
<h1 >"        X ,O Game    "</h1>
<table >
    <tr>
       <td id="td1"  onclick="tdElm(1);" ></td>
       <td id="td2" onclick="tdElm(2);"></td>
       <td id="td3" onclick="tdElm(3);"></td>
    </tr>

    <tr>
       <td id="td4" onclick="tdElm(4);"></td>
       <td id="td5" onclick="tdElm(5);"></td>
       <td id="td6" onclick="tdElm(6);"></td>
    </tr>

    <tr>
       <td id="td7" onclick="tdElm(7);"></td>
       <td id="td8" onclick="tdElm(8);"></td>
       <td id="td9" onclick="tdElm(9);"></td>
    </tr>
</table>
</center>

</BODY>

1 个答案:

答案 0 :(得分:0)

您的代码存在很多问题,

我建议你看一下这个快速的黑客,我把它放在一起工作,随时提问。

http://jsfiddle.net/TKq2H/2/


<强>更新

请参阅更新,更简单的版本。

http://jsfiddle.net/blowsie/TKq2H/4/

function call() {
    var x = Math.floor((Math.random() * 9) + 1);
    if ($('#td' + x).text() === "x" || $('#td' + x).text() == "o") {
        call();
    }
    else {
        $("#td" + x).text("o");
    }

}
$('td').click(function() {
    var no = $(this).data('no')
    if ($('#td' + no).text() === "x" || $('#td' + no).text() == "o") return false;
    else {
        $("#td" + no).text("x");
        call();
    }
});​


<center>
<h1 >"        X ,O Game    "</h1>
<table >
    <tr>
       <td id="td1"  data-no="1" ></td>
       <td id="td2" data-no="2"></td>
       <td id="td3" data-no="3"></td>
    </tr>

    <tr>
       <td id="td4" data-no="4"></td>
       <td id="td5" data-no="5"></td>
       <td id="td6" data-no="6"></td>
    </tr>

    <tr>
       <td id="td7" data-no="7"></td>
       <td id="td8" data-no="8"></td>
       <td id="td9" data-no="9"></td>
    </tr>
</table>
</center>
​