Javascript 尽管I';I’随信附上文件,准备好了吗

Javascript 尽管I';I’随信附上文件,准备好了吗,javascript,jquery,html,css,click,Javascript,Jquery,Html,Css,Click,jquery单击“不工作”。虽然这个问题已经讨论了很多,但我找不到一个解决问题的答案。我已经在$(document)中附上了jQuery代码。准备好了,但没有成功 这是html <!DOCTYPE html> <html> <head> <title>Tic Tac Toe</title> <meta charset="UTF-8"> <meta name="viewport" content=

jquery单击“不工作”。虽然这个问题已经讨论了很多,但我找不到一个解决问题的答案。我已经在$(document)中附上了jQuery代码。准备好了,但没有成功

这是html

<!DOCTYPE html>
<html>
<head>
    <title>Tic Tac Toe</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="triliza01.css" type="text/css" />
    <script type="text/javascript" src="jquery.1.11.2.js"></script>
    <script type="text/javascript" src="script.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {

           p1=new lPlayer("x.png");
           p2=new lPlayer("o.jpg");
           p1.setOponent(p2);
           p2.setOponent(p1);
           theWinner=play(p1);

        }); // end of ready( ) function
    </script> 
</head>
<body>

        <table>
            <tr id="zRaw">
                <td id="z0">

                </td>
                <td id="z1">

                </td>
                <td id="z2">
                </td>
            </tr>
            <tr id="fRaw">
                <td id="f0">
                </td>
                <td id="f1">
                </td>
                <td id="f2">
                </td>
            </tr>
            <tr id="sRaw">
                <td id="s0">
                </td>
                <td id="s1">
                </td>
                <td id="s2">
                </td>
            </tr>
        </table>

</body>
欢迎任何帮助! 谢谢大家!

用你的逻辑

$(i).click( function() {
                if (board[i]==="none") {
                    board[i]=sign;
                    return i;
                }
您只将click事件处理程序绑定到i元素的click事件。如果要手动启动,则需要在不带参数的情况下调用click:

$(i).click()
当然,此时您的处理程序需要已经绑定

编辑: 您的代码执行以下操作:

  • 检查你的元素
  • 如果元素不是以“#”开头,则忽略它
  • 将单击处理程序分配给所有其他元素
  • 从1开始

  • 为什么要一次又一次地分配单击处理程序?每个元素一次就足够了。它将在用户单击元素时被调用—每次用户单击元素时。在您的例子中,您创建了一个无限循环,您的代码将停止工作

    代码中有一个无限循环。不可能测试它。
    阅读您的代码,我认为它不会返回元素的正确的
    id
    ,这就是为什么单击不起作用的原因

    单击事件在哪里?它就埋在那里。我猜您一定是遇到了控制台错误?我在您的脚本中没有看到任何单击事件。用$(“#whatYouWantToBeClicked”)括起脚本逻辑$(i) 。单击它,我在Javascript中是新的。我不确定是否收到控制台错误。我想在单击id为I的元素时做出反应。您能详细说明您的问题吗?在您的帖子中,您声明您希望点击能够响应。但它不会响应,因为您将处理程序绑定到move方法中的事件。绑定意味着您告诉元素单击时要执行的操作。它不会马上做的。它仍在等待单击。手动触发事件可以通过以下方法实现。单击()-不带参数。我不想通过代码触发元素。该元素由用户触发。我不想通过代码触发元素。该元素由用户触发。这段代码是一个井字游戏,我正试图开发。可点击的元素是构成tic tac趾板的9个td元素。我试图在单击它们时修改它们的图像。我试过使用调试器,但似乎一切都正常运行,只是尽管用户单击了相应的元素,但并没有触发单击。好的,我现在意识到我的方法是错误的。我将重写代码。谢谢。它返回正确的id,因为我已经检查过了。如果单击有效,则循环不是无限的。
    $(i).click( function() {
                    if (board[i]==="none") {
                        board[i]=sign;
                        return i;
                    }
    
    $(i).click()