保持错误的字母可见

时间:2012-10-11 09:38:48

标签: javascript jquery

修改

在我的拖放游戏中,有一个网格,其中填充了对用户隐藏的单词。游戏的目的是借助声音和图片拼写这些单词。用户通过将相关字母拖放到网格上来拼写单词。

如果字母正确,它将以“wordglow3”类亮绿色。如果它是错误的,它将以“wordglow”发红光。由于游戏是针对儿童的,我希望他们看到他们放下的字母留在那里,直到尝试完成,这样他们就可以完整地看到这个词,所以我用过......

$(that).html($(ui.draggable).text().trim());

让它留在那里。问题是如果用户得到错误的单词,在下一次尝试同一个单词时,这不起作用,我不知道为什么。如果用户到达下一个单词,它将再次用于第一次尝试,依此类推。谁能帮助我让它变得一致?

以下是执行操作的代码...

if ($(that).data("letter") == $(ui.draggable).text().trim()) {

            $(that).removeClass("wordglow").addClass('wordglow3').css('color', 'white');
            $(that).html($(ui.draggable).text().trim());

        } else {

            $(that).addClass('wordglow');
            $('.drag').css("color", "white");
            $(that).html($(ui.draggable).text().trim());

        }

我是否有办法在每次尝试这个词后重置?我试过把它变成一个变量,然后把它重置为零,但它不起作用。

帮助小提琴 - http://jsfiddle.net/smilburn/m8Squ/6/

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。

       if ($(that).data("letter") == $(ui.draggable).text().trim()) {

            $(that).addClass('wordglow3').css('color', 'white');
            $('.drag').css("color", "white");
            $(that).html($(ui.draggable).text().trim());


        } else {

            $(that).addClass('wordglow').css('color', 'white');
            $('.drag').css("color", "white");
            $(that).html($(ui.draggable).text().trim());

        }