在jQuery的扩展过滤里面由于选择元素性能不是很好,所以当在使用jQuery过滤的时候通常是配合着基础选择器来使用。
目录
:hidden Selector
描述:选择所有隐藏的元素
语法:$(":hidden")或者jQuery(":hidden")
补充:元素可被认为隐藏有一下几种情况
1.元素的display值为none
2.type="hidden"的表单元素
3.元素的宽度和高度都设置为0
4.元素的祖先元素是隐藏的,因此该元素不会在页面上显示
<div style="display:none">
<p></p>
</div>
<div style="width:0;height:0"></div>
<input type="hidden"/>
<script>
$(":hidden") //div(none) div(width:0,height:0) p input
</script>
:visible Selector
描述:选择所有可见的元素
语法:$(":visible")或者jQuery(":visible")
注意:如果元素占据一定的空间,元素被认为是可见的,可见元素的宽度和高度都是大于0的。所以,元素的visible:hidden或者opacity:0被认为是可见的,因为他们仍然占据空间布局。不在文档中的元素被认为是隐藏的,jQuery没有办法知道它们是否是可见的,因为可见性依赖适用的样式。隐藏元素上做动画,元素被认为是可见的,直到动画结束;在显示元素上做动画,动画在开始处是可见的。
<div></div>
<script>
$(function(){
$(":visible") //div
})
</script>