我正试图检查一个选择器是否有一组特定的类。
.hasClass()只能检查选择器是否有一个类。并且.is()选择器可以查找多个类,但如果选择器至少有一个类,则返回true。
但我不想找到一种方法来检查一个选择器是否同时具有这两个类,并且只有当两个类都执行动作时才会这样做。
任何指针?
答案 0 :(得分:4)
您可以简单列出类名:
.foo.bar.bar
此选择器匹配包含所有类 foo , bar 和 baz 的任何元素。
答案 1 :(得分:2)
is()函数应该适合你。
答案 2 :(得分:2)
我认为$.is('.class1.class2')
会做你想要的。例如,$('#foo').is('.a.b')
对于以下div
返回true,但$('#foo').is('.a.c')
将返回false:
<div id="foo" class="a b"></div>
这不是你想要的吗?
答案 3 :(得分:1)
$('div.class1.class2')
没有做你想做的事情(即找到任何带有class1和class2的div)
答案 4 :(得分:1)
你可以这样做:
var $blah = $("blah");
if($blah.hasClass("test") && $blah.hasClass("othertest")){
// something
}
...或使用选择器
$(".test.othertest");