1

有点难以解释,但就是这样。

我有一门课,.possibleMatch。

我还有一个数组 myPicks,其中包含其他类(.silver、.music、.newest)的列表。

有一个无序列表,每个 li 都被分配了某些类(.possibleMatch、.silver、.music、.gold、.newest、.platinum)

现在我要做的是从 ul 中找到 .possibleMatch 类中的每个项目,这也在 myPicks 中的类中,所以 .silver、.music 和 .newest,并仅使用这些项目更新 .possibleMatch。

这是我到目前为止所尝试的:

var i;
for(i=0; i<myPicks.length; i++) {

    $('.possibleMatch').has(myPicks[i]);
}

var i;
for(i=0; i<myPicks.length; i++) {
    $('.possibleMatch').hasClass(myPicks[i]);
}

var i;
for(i=0; i<myPicks.length; i++) {

    $('.possibleMatch').filter(myPicks[i]);
}

数组 myPicks 填充了类字符串中的名称,而不是实际的类本身。当我将它与 filter、has 和 hasClass 配对时,这是问题吗?

单击按钮时数组会更新,每个按钮都带有类名:

var myPicks[];
$('.button').click( function() {
    var hello = " " + $(this).attr('class').split(' ')[0];
    myPicks.push(hello);
}

谢谢,如果难以理解,我深表歉意!

-- 编辑:这是 HTML

<ul id="trueMatch">
        <li class="possibleMatch silver music newest" id="uno">VW</li>
        <li class="possibleMatch platinum music" id="dos"> AC </li>
        <li class="possibleMatch gold music newest" id="tres"> ML</li>  
</ul> 
4

2 回答 2

3

你可以尝试的是

如果类与类一起possibleMatch被分配给lismyPicks<li class="possibleMatch silver">ddd</li>

var $lis = $('.possibleMatch').filter(myPicks.join(','));

演示:小提琴

于 2013-08-12T00:49:09.210 回答
-1

尝试这个

$('.possibleMatch').each(function() {
    var elment = $(this);
    for( var i=0; i<myPicks.length; i++){
        if ( elment.hasClass( myPicks[i] ) {

        }
    }
});

假设该数组包含不带点的类名

于 2013-08-12T00:50:39.060 回答