2012-10-10 89 views
5

如果我在元素上调用.hide(),jQuery将会/可以在普通的dom选择器中选择它。请问jQuery选择隐藏的元素

如果jQuery通常选择隐藏元素,那么选择唯一可见元素的正确方法是什么?我可以使用CSS选择器,还是有更有效的方法来做到这一点?

+0

这是将风格分开的优点之一。 –

+2

我真的不明白为什么这个问题被关闭为不具建设性。在我看来,他提出了一个非常简单的是/否问题,然后寻求一种方法来完成一个非常具体的目标。我不明白为什么它可能会“争论辩论,争辩,投票或扩大讨论”。我不一定不同意,但我只想了解这个问题没有达到什么标准。 – Isochronous

回答

3

是的。 hide函数仅存储元素的display css属性的当前值,然后将其设置为none。所以dom选择器不会受到它的影响,除非它们试图匹配具有特定值的元素。

检查它here

看一看jQuery hide function documentation

1

是的,它会计算隐藏的元素。

1

是的,它只是增加了一个display:none样式元素... .remove()另一方面不会显示在计数中。但是,它完全摆脱了它,除非您将值存储在某个地方,否则无法检索。

我假设你想要做的是计数可见项。我会做以下几点:

$('.element').addClass('hide'); 

var count_of_visible_items = $('.element:not(".hide")').length; 
console.log(count_of_visible_items);