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

(编辑:jimmy 日期: 2024/10/10 浏览:2)

一直不是很清楚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')

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。