首页 > PHP资讯 > HTML5培训技术 > jQuery参考实例-在当前选中的元素集中查找下级元素

jQuery参考实例-在当前选中的元素集中查找下级元素

HTML5培训技术
本文翻译自jQuery Cookbook (O’Reilly 2009) 1.6 Finding Descendant Elements Within the Currently Selected Wrapper Set
需求
在选中一个或几个元素后,需要在这些DOM元素范围内查找下级元素或子元素。
解决方案
从当前几个元素及其下级元素中查找并创建新的元素集,可以用find()方法。比如,有一张包含多个文字段落(

)的网页,每个段落中会有一些文字是斜体的()。如果需要选择所有

段落中的元素,可以这么做:

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 

Ut ad videntur facilisis elit cum. Nibh insitam erat facit

saepius magna. Nam ex liber iriure et imperdiet. Et mirum eros
iis te habent.

 

Claram claritatem eu amet dignissim magna. Dignissim quam elit facer eros

illum. Et qui ex esse tincidunt anteposuerit. Nulla nam odio ii
vulputate feugait.

 

In quis laoreet te legunt euismod. Claritatem consuetudium

wisi sit velit facilisi.

  <script type="text/ 选择器表达式:alert('The three paragraphs in all contain ' + jQuery('p em').length +
  ' italic words');
讨论
jQuery的find()方法会根据调用该方法的DOM元素及其子元素来查找创建新的元素集。在实际使用中,find()函数很容易与filter()函数混淆。最简单的区分两者的方法是:find()针对的是当前元素集的下级元素或子元素,而filter()针对的是当前元素集本身。换而言之,如果想从当前元素集的下级元素或子元素中查找,find()方法比较合适;而如果想对当前元素集本身进行过滤来获取一个子集,那么filter()方法才是不二之选。更直白的说,find()方法返回的是子元素组成的集合,而filter()方法返回的是当前元素集经过过滤后的子集。
 
本文由欣才IT学院整理发布,未经许可,禁止转载。