筛选
- 过滤
- eq
- first
- last
- hasClass(class)
- filter(expr|obj|ele|fn)
- is
- map(callback)
- has
- not
- 查找
- children([expr])
- closest(e|o|e)1.7*
- find(e|o|e)
- next([expr])
- nextAll([expr])
- nextUntil([e|e][,f])
- offsetParent()
- parent([expr])
- parents([expr])
- parentsUntil([e|e][,f])
- prev([expr])
- prevAll([expr])
- prevUntil([e|e][,f])
- siblings([expr])
- 串联
- add(e|e|h|o[,c])1.9*
- addBack()1.9+
- contents()
- end()
过滤
eq
作用:类似于get,但get返回的是DOM对象。获取当前链式操作中第N个jQuery对象,返回jQuery对象,当参数大于等于0时为正向选取,比如0代表第一个,1代表第二个。当参数为负数时为反向选取,比如-1为倒数第一个。
<p>1</p>
<p>2</p>
<p>3</p>
$("p").eq(1); 返回:<p>2</p>
first
获取匹配的第一个元素
<p>1</p>
<p>2</p>
<p>3</p>
$("p").first(); 返回:<p>1</p>
last
获取匹配的最后一个元素
<p>1</p>
<p>2</p>
<p>3</p>
$("p").last(); 返回:<p>3</p>
hasClass(class)
检查当前元素是否含有某个特定的类,有返回true ,和is(""+class)一样。
<p>1</p>
<p>2</p>
<p class="box-p3">3</p>
$("p").hasClass(box-p3); 返回:true
filter(expr|obj|ele|fn)
应用于筛选出特定表达式的元素集合,用于缩小范围,每个元素之间使用逗号隔开。
<p>1</p>
<p>2</p>
<p class="box-p3">3</p>
$("p").filter("box-p3"); 返回:<p class="box-p3">3</p>
is
根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。
<div>
<p>1</p>
<p>2</p>
<p class="box-p3">3</p>
<div>
$("div").parent().is("p") 返回:true
map(callback)
将一组元素转换成其他数组(不论是否是元素数组)
has
保留包含特定后代的元素,去掉那些不含有指定后代的元素。
.has()方法将会从给定的jQuery对象中重新创建一组匹配的对象。提供的选择器会一一测试原先那些对象的后代,含有匹配后代的对象将得以保留。
not
从匹配元素的集合中删除与指定表达式匹配的元素
查找
children([expr])
取得一个包含匹配的元素集合中每一个元素的所有子元素的元素集合。
可以通过可选的表达式来过滤所匹配的子元素。注意:parents()将查找所有祖辈元素,而children()只考虑子元素而不考虑所有后代元素。
closest(e|o|e)1.7*
jQuery 1.3新增。从元素本身开始,逐级向上级元素匹配,并返回最先匹配的元素。。
closest会首先检查当前元素是否匹配,如果匹配则直接返回元素本身。如果不匹配则向上查找父元素,一层一层往上,直到找到匹配选择器的元素。如果什么都没找到则返回一个空的jQuery对象。
closest和parents的主要区别是:1,前者从当前元素开始匹配寻找,后者从父元素开始匹配寻找;2,前者逐级向上查找,直到发现匹配的元素后就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;3,前者返回0或1个元素,后者可能包含0个,1个,或者多个元素。
closest对于处理事件委托非常有用。
find(e|o|e)
搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。
所有搜索都依靠jQuery表达式来完成。这个表达式可以使用CSS1-3的选择器语法来写。
next([expr])
取得一个包含匹配的元素集合中每一个元素紧邻的后面同辈元素的元素集合。
这个函数只返回后面那个紧邻的同辈元素,而不是后面所有的同辈元素(可以使用nextAll)。可以用一个可选的表达式进行筛选。
nextAll([expr])
查找当前元素之后所有的同辈元素。
可以用表达式过滤
nextUntil([e|e][,f])
查找当前元素之后所有的同辈元素,直到遇到匹配的那个元素为止。
如果提供的jQuery代表了一组DOM元素,.nextUntil()方法也能让我们找遍所有元素所在的DOM树,直到遇到了一个跟提供的参数匹配的元素的时候才会停下来。这个新jQuery对象里包含了下面所有找到的同辈元素,但不包括那个选择器匹配到的元素。
如果没有选择器匹配到,或者没有提供参数,那么跟在后面的所有同辈元素都会被选中。这就跟用没有提供参数的 .nextAll()效果一样。
offsetParent()
返回第一个匹配元素用于定位的父节点。
这返回父元素中第一个其position设为relative或者absolute的元素。此方法仅对可见元素有效
parent([expr])
取得一个包含着所有匹配元素的唯一父元素的元素集合。
你可以使用可选的表达式来筛选
parents([expr])
取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选
parentsUntil([e|e][,f])
查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止。
如果提供的jQuery代表了一组DOM元素,.parentsUntil()方法也能让我们找遍所有元素的祖先元素,直到遇到了一个跟提供的参数匹配的元素的时候才会停下来。这个返回的jQuery对象里包含了下面所有找到的父辈元素,但不包括那个选择器匹配到的元素
prev([expr])
取得一个包含匹配的元素集合中每一个元素紧邻的前一个同辈元素的元素集合。
可以用一个可选的表达式进行筛选。只有紧邻的同辈元素会被匹配到,而不是前面所有的同辈元素。
prevAll([expr])
查找当前元素之前所有的同辈元素
可以用表达式过滤
prevUntil([e|e][,f])
查找当前元素之前所有的同辈元素,直到遇到匹配的那个元素为止。
如果提供的jQuery代表了一组DOM元素,.prevUntil()方法也能让我们找遍所有元素所在的DOM树,直到遇到了一个跟提供的参数匹配的元素的时候才会停下来。这个新jQuery对象里包含了前面所有找到的同辈元素,但不包括那个选择器匹配到的元素。
如果没有选择器匹配到,或者没有提供参数,那么排在前面的所有同辈元素都会被选中。这就跟用没有提供参数的 .prevAll()效果一样
siblings([expr])
取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合。可以用可选的表达式进行筛选。
串联
add(e|e|h|o[,c])1.9*
把与表达式匹配的元素添加到jQuery对象中。这个函数可以用于连接分别与两个表达式匹配的元素结果集。
addBack()1.9+
加入先前所选的加入当前元素中
contents()
添加堆栈中元素集合到当前集合,一个选择性的过滤选择器。
end()
查找匹配元素内部所有的子节点(包括文本节点)。如果元素是一个iframe,则查找文档内容