1.可见性过滤选择器
:hidden 选取所有不可见的元素。例如:$(“:hidden”) 表示选取所有不可见的元素。包括:
html页面上的注释内容/**/、
、(如果页面上由此标签)、等元素。如果只想去元素,可以使用$(“input:hidden”) 注意input:hidden之间没有空格,稍后我们会讲解这个有无空格的区别;
验证如下:
验证页面代码:
测试jQuery选择器
输出结果如下:
$(':hidden').length:8
$('input:hidden').lengh:1
HEAD:
测试jQuery选择器
META:
TITLE:测试jQuery选择器
SCRIPT:
STYLE: .test {
background-color: yellow;
}
INPUT:
DIV:
SCRIPT:
var $hidden1 = $(":hidden");
var $hidden2 = $("input:hidden");
var len1 = $hidden1.length;
var len2 = $hidden2.length;
console.log("$(':hidden').length:"+len1);
console.log("$('input:hidden').lengh:" + len2);
$.each($hidden1, function () {
console.log(this.nodeName+":"+ this.innerHTML);
});
$.each($hidden2, function () {
console.log(this.nodeName + ":" + this.innerHTML);
});
INPUT:2. 选择器中有无空格
在选择器中的空格用不能忽视,有无空格会得到不同的结果。 看下面的例子:
测试jQuery选择器
输出结果如下:
$('.test :hidden').length:4
$('.test:hidden').length:3
DIV:a
DIV:b
DIV:c
DIV:d
DIV:d
DIV:e
DIV:f之所以有不同的结果,因为后代选择器和过滤选择器的不同。
带空格的$(".test :hidden") 选取的是class为”test”的元素里面的隐藏元素,相当于就是.class *:hidden 和css的表述类似。
不带空格的$(".test:hidden") 选取的是隐藏的元素的class为”test”。










