7

在我创建的拼写游戏中,有一个填充了单词的网格。游戏的目的是通过单击侧面的字母来拼写单词,这些字母会动画到网格中的空白处。如果要拼写,单词会突出显示,因此用户可以看到下一步要去哪里。游戏的目的是在网格中拼出所需数量的单词以完成游戏。我通常将其设置为 2,但刚刚将其更改为 3,并且在我拼出第二个单词后程序不断中断。

    if (score.right == 3) {
    ................
    ................
}

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

setTimeout(function() {
                    jQuery('.next-question').trigger('click');
                }, 1500);

我试图通过断点,但似乎找不到问题。有人可以帮我让它再次工作并告诉我哪里出错了吗?

目前在我的游戏中没有提示图片或提示声音,因此要找到突出显示的单词,您必须使用控制台。尝试正确回答两个然后它会崩溃。

这是损坏的小提琴:http: //jsfiddle.net/smilburn/Dxxmh/101/

这是对以前工作正常的一个小提琴:http: //jsfiddle.net/smilburn/Dxxmh/100/(某些类名可能已更改)

4

1 回答 1

8

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

接下来的事情,一开始你有 var 定义,比如

var hintPic = $("#hintPic")[0];

此语句将集合中的第一个元素作为普通 DOM 元素返回。所以稍后当你试图展示它时

hintPic.show();

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

于 2012-11-14T13:51:39.267 回答