我檢索的「發現」元素(這些元素具有.highlight
類)這個簡單的jQuery片段數量:的jQuery尋找元素:塊
$(".highlight").length
但現在我的問題是,一些元素被隱藏,通過style="display: none;"
現在,我如何獲得突出顯示的元素數量?
喜歡的東西:
$(hasClass 'highlight' AND has style 'display: block'). length ?
我檢索的「發現」元素(這些元素具有.highlight
類)這個簡單的jQuery片段數量:的jQuery尋找元素:塊
$(".highlight").length
但現在我的問題是,一些元素被隱藏,通過style="display: none;"
現在,我如何獲得突出顯示的元素數量?
喜歡的東西:
$(hasClass 'highlight' AND has style 'display: block'). length ?
您可以使用:visible獲得元件,它是可見的。
$(".highlight:visible").length
還可以通過使用css看到元件做具有的CSS display="none"
或display="block"
$(".highlight").each(function(){
if($(this).css("display")=="block"){
//Your code here
}
});
的一種方式是如阿迪爾提到使用:visible
jQuery的僞選擇器。
一個常見的錯誤是,如果與.highlight
類元素嵌套到隱藏,然後一個容器,你將無法得到它,即使該元素具有display: block
相反,你可以使用CSS的正則表達式如下: $('.highlight[style*="display: block"]')
一個常見的錯誤是,您需要確切知道如何編寫規則。如果在block
之前沒有空格,則如下所示:display:block
而不是display: block
您無法獲取元素。
克服這種情況的方法是隻在風格的搜索術語block
像這樣: $('.highlight[style*="block"]')