我有一个带有 data-windows 属性的 div 元素列表:
我基本上想检查其中是否有任何一个没有隐藏(如果它们都隐藏了,就做一些事情)
我像这样循环它们,这有效,但我想知道是否有更有效的方法:
$("[data-windows]").each(function () {
if (!$(this).hasClass('hidden')) {
isSomethingShown = true;
return false;
}
});
最佳答案
您可以使用 :visible
伪选择器:
if($("[data-windows]:visible").length){
//Atleast 1 is visible
}else{
//All hiden
}
或
var isSomethingShown = !!$("[data-windows]:visible").length; // Bang!Bang! [!!] convert into a boolean
当然,如果你想显式检查类,两个选择器都可以更改为(也许应该是为了更快的性能)$("[data-windows].hidden")
关于javascript - 检查任何数据项上是否不存在类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22381284/