我有这个:
<div class="class1 class2">1</div>
<div class="class1 class3">2</div>
<div class="class1 class4">3</div>
<div class="class1">4</div>
我知道如果我想选择包含多个特定类的div,我可以这样做:
$('.class1.class2');
如果我只想选择只包含一个特定类的div,我可以这样做:
$('[.class1]');
但是如何选择包含一个特定类加上任何其他类的div?我需要选择包含class1加上任何其他类的所有div,但不要选择仅包含class1的div。这只是一个小样本;我们网站的样式表中有几百个类,所以硬编码任何东西都是不可行的。
答案 0 :(得分:4)
你可以这样做:
$('.class1').not("[class='class1']")
答案 1 :(得分:0)
我没有看到任何唯一的选择器解决方案,但你可以这样做:
$(".class1").each(function(index, element){
var classes = $(element).attr('class').split(/\s+/);
if(classes.length > 1){
// element has other class than class1
}
});
如果您的代码不包含任何不必要的白色字符,它将起作用。