3

在我的文字游戏中,有一个<ul>包含单词的单词列表,与单词相关的图片和与单词相关的声音。

当游戏运行时,脚本会根据我声明为“maxWords”的单词量动态创建一个网格。

我遇到的问题是,当我运行程序时,有时缺少一个单词,但图像和声音仍然存在。

自从我让我的网格接受更大的词后,这种情况才开始发生,而且我在试图找出为什么会发生这种情况时遇到了麻烦。

这是存储在 HTML 中的 wordList...

 <ul style="display:none;" id="wordlist">

    <li data-word="mum" data-audio="http://www.wav-sounds.com/cartoon/porkypig2.wav" data-pic="http://www.clker.com/cliparts/5/e/7/f/1195445022768793934Gerald_G_Lady_Face_Cartoon_1.svg.med.png"></li>

    <li data-word="lion" data-audio="http://www.wav-sounds.com/cartoon/bugsbunny2.wav" data-pic="http://www.clker.com/cliparts/c/9/9/5/119543969236915703Gerald_G_Cartoon_Cat_Face.svg.med.png"></li>

    <li data-word="bear" data-audio="http://www.wav-sounds.com/cartoon/daffyduck1.wav" data-pic="http://www.clker.com/cliparts/a/2/c/0/1195440948271207911zeimusu_spotty_dog.svg.med.png"></li>

    <li data-word="beetle" data-audio="http://www.wav-sounds.com/cartoon/daffyduck2.wav" data-pic="http://www.clker.com/cliparts/4/b/4/2/1216180545881311858laurent_scarabe.svg.med.png"></li>

    <li data-word="rat" data-audio="http://www.wav-sounds.com/cartoon/bugsbunny1.wav" data-pic="http://www.clker.com/cliparts/C/j/X/e/k/D/mouse-md.png"></li>

    <li data-word="father" data-audio="http://www.wav-sounds.com/cartoon/porkypig1.wav" data-pic="http://www.clker.com/cliparts/3/a/6/6/119544474191128182Gerald_G_Man_Face_6_-_World_Label.svg.med.png"></li>

  </ul>

该脚本相当大,所以这里有一个小提琴来看看http://jsfiddle.net/smilburn/HZX6k/4/

4

1 回答 1

1

也许它不能解决问题,但我在评论中看到了误导性的讨论,并且可能有一些易于修复的代码错误:

选择时 jQuery 方法需要 $() 语法,并且当您将 jQuery 选择器放入变量时,如下所示:

var yourvar = $("#selector")

您不再需要 $() ,只需使用 yourvar.whatever() 进行 jquery 方法调用。pic 变量可能没有方法显示,因为它不是选择器。

我建议使用 :nth-child() 选择器而不是当前的方括号(数组)选择器

现在,这解决了图片,并没有解决更大的词谜:D

对于更大的单词,您需要检查硬编码条件并记录任何可能导致代码中断的地方,我假设它是循环中断,以查看问题出在哪里。

于 2012-09-19T10:08:39.317 回答