将类放在另一个类中

时间:2012-11-01 16:56:46

标签: javascript jquery

在我的程序中,我有一个名为“我想在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/

2 个答案:

答案 0 :(得分:0)

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

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

请注意,parent()只会为您提供直接的祖先,如果您需要更高的话,请使用parents()

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

答案 1 :(得分:0)

尝试.closest()

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

tdspellWord.的父级。所以你需要转到它的td祖先,然后添加类