51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

jQuery中filter()和find()的区别深入了解

一直不是很清楚filter()方法和find()方法的区别,今天在看jQuery Cookbook一书中,终于算是搞清楚了。

filter()过滤DOM元素包装集,是指操作当前元素集,删除不匹配的元素,得到一个新的集合
++复制代码++ 代码如下:

$('div').filter('.div1');//选择div标签中class属性为div1的div元素

find()在当前选中元素的上下文中找到符合条件的后代,返回的是子元素
++复制代码++ 代码如下:

$('div').find('em');//选择div标签中的em标签的元素

由上面可以看出,filter()是对选中的元素集合操作,得到这些元素中符合条件的元素,而find()是得到选中元素

中符合条件的后代子元素。

最后再介绍一个end()方法,用来返回破坏性修改之前的选择
++复制代码++ 代码如下:

$('div').filter('.div1').end();//返回的是使用filter()之前的选择元素,即$('div')


赞(0)
未经允许不得转载:工具盒子 » jQuery中filter()和find()的区别深入了解