0

在我的程序中,我有一个名为“正确答案的课程,我想在 td 课程中使用它,但我遇到了真正的麻烦。

这是我将“正确的单词”类添加到“spellWord”的地方。但是如何将它添加到“td”类中。

var spellWord = $('.highlight-problem .drop-box');
            if (!spellWord.filter(':not(.occupied)').length) {
                var wordIsCorrect = 0;
                spellWord.each(function () {
                    if ($(this).parents('td').data("letter") == $(this).find("div").data("letter")) {
                        console.log('letter is: ' + $(this).find("div").data("letter"))
                        wordIsCorrect++;
                    }
                });
                console.log(spellWord.length + ' , ' + wordIsCorrect);
                if (spellWord.length == wordIsCorrect) {
                    spellWord.addClass('right-word');
                    $(right).css('visibility', 'visible');
                    $(wrong).css('visibility', 'hidden');
                    score.right++;
                    $('.score').html(score.right + "/2").show();
                    setTimeout(function() {
                        successSound.play();
                    }, 200);

我已经尝试过类似的东西。

spellWord.addClass('td').addClass('right-word');

$('.td').addClass('right-word');

但似乎无法让它工作。小提琴:http: //jsfiddle.net/smilburn/Dxxmh/93/

4

2 回答 2

0

如果 spellWord 元素在 td 内,请使用parent()

spellWord.parent().addClass('right-word');

请注意,parent()这只会给您直接祖先,parents()如果您需要更高,请使用。

closest(), siblings(), 或find()也可能有帮助,具体取决于 td 与 spellWord 元素的关系。

于 2012-11-01T16:59:48.600 回答
0

尝试.closest()

spellWord.closest('td').addClass('right-word');

td是 的父级spellWord.。所以你需要去它的 td 祖先,然后添加类

于 2012-11-01T17:00:36.570 回答