虽然大多数前端都用jquery,可是对jquery这几个选择器在使用上的异同,大家应该平时不会太在意,或者也是一知半解吧!
下面简单总结了下:
1.filter:
.filter( selector )
.filter( function(index) )
.filter( element )
.filter( jQuery object )
和find区别是,find是对它的子集的操作,而filter是对自身集合元素的操作
2.find:
.find( selector )
.find( jQuery object )一个用于匹配元素的jQuery对象。
.find( element )一个用于匹配元素的DOM元素。
和children的区别是children只查找子元素,而不是后代元素
3.children:
.children( [ selector ] )
匹配元素的选择器字符串.children(".selected")
4.contents: 方法返回所有直接子元素,包括被选元素的文本和注释节点。 文本节点是由元素显示的实际文本。 该方法与 children() 方法类似,不同的是它返回的是文本和注释节
和children的区别是,包括文本和注释节点
5.contains:
jQuery(‘:contains(text)‘)
<div>John Resig</div>
匹配的文本$("div:contains(‘John‘)").css("text-decoration", "underline");//查找所有包含 "John" 的 div 元素
$(“ul li”>.filter(“:contains(‘佳能’),:contains(‘尼康’),:contains(‘电话’)”)).addClass(”promoted”);