完成编号更改后,jQuery/JavaScript程序中断

Mil*_*o-J 7 javascript jquery

在我创建的拼写游戏中,有一个填充了单词的网格.游戏的目的是通过单击侧面的字母来拼写单词,这些字母可以激活到网格中的空白区域.如果要拼写单词,则会突出显示单词,因此用户可以查看下一步的位置.游戏的目的是在网格中拼写所需数量的单词以完成游戏.我通常将它设置为2,但刚刚将其更改为3,并且在我拼写第二个单词后程序仍然断开.

    if (score.right == 3) {
    ................
    ................
}
Run Code Online (Sandbox Code Playgroud)

通常当你正确拼写单词时,我会使用"click.trigger"函数移动到网格中的下一个突出显示的单词.在2个正确的程序之后,程序要么不进入下一个程序,要么返回到最后一个程序,并且不允许您单击字母.

setTimeout(function() {
                    jQuery('.next-question').trigger('click');
                }, 1500);
Run Code Online (Sandbox Code Playgroud)

我试图通过破发点但似乎无法找到问题.有人可以帮助我让它再次运作并告诉我哪里出错了吗?

在我的游戏中,没有提示图片或提示声音,所以要找到你必须使用控制台的突出显示的单词.尝试回答两个然后它会崩溃.

这是一个破碎的小提琴:http://jsfiddle.net/smilburn/Dxxmh/101/

这是一个很好的前一个工作得很好:http://jsfiddle.net/smilburn/Dxxmh/100/(某些类名可能已更改)

小智 8

第一件事.图像不会在新版本中显示,因为对于它们的链接,你使用的相对路径就jsfiddle而言并不存在.较早的使用绝对链接.音频文件也是如此.

接下来,在开始时你有像var这样的var定义

var hintPic = $("#hintPic")[0];
Run Code Online (Sandbox Code Playgroud)

此语句将set中的第一个元素作为纯DOM元素返回.所以稍后当你试图展示它时

hintPic.show();
Run Code Online (Sandbox Code Playgroud)

它不会工作,因为'show'是一个jquery函数.从变量定义中删除[0],它应该可以正常工作.