- jQuery 教程
- jQuery - 首页
- jQuery - 路线图
- jQuery - 概述
- jQuery - 基础
- jQuery - 语法
- jQuery - 选择器
- jQuery - 事件
- jQuery - 属性
- jQuery - AJAX
- jQuery DOM 操作
- jQuery - DOM
- jQuery - 添加元素
- jQuery - 删除元素
- jQuery - 替换元素
- jQuery CSS 操作
- jQuery - CSS 类
- jQuery - 尺寸
- jQuery - CSS 属性
- jQuery 效果
- jQuery - 效果
- jQuery - 动画
- jQuery - 链式调用
- jQuery - 回调函数
- jQuery 遍历
- jQuery - 遍历
- jQuery - 遍历祖先元素
- jQuery - 后代元素遍历
- jQuery UI
- jQuery - 交互
- jQuery - 小部件
- jQuery - 主题
- jQuery 参考
- jQuery - 选择器
- jQuery - 事件
- jQuery - 效果
- jQuery - HTML/CSS
- jQuery - 遍历
- jQuery - 其他
- jQuery - 属性
- jQuery - 工具函数
- jQuery 插件
- jQuery - 插件
- jQuery - PagePiling.js
- jQuery - Flickerplate.js
- jQuery - Multiscroll.js
- jQuery - Slidebar.js
- jQuery - Rowgrid.js
- jQuery - Alertify.js
- jQuery - Progressbar.js
- jQuery - Slideshow.js
- jQuery - Drawsvg.js
- jQuery - Tagsort.js
- jQuery - LogosDistort.js
- jQuery - Filer.js
- jQuery - Whatsnearby.js
- jQuery - Checkout.js
- jQuery - Blockrain.js
- jQuery - Producttour.js
- jQuery - Megadropdown.js
- jQuery - Weather.js
- jQuery 有用资源
- jQuery - 问答
- jQuery - 快速指南
- jQuery - 有用资源
- jQuery - 讨论
jQuery - 后代元素遍历
jQuery 提供了方法来遍历 DOM 树中的向下路径,以查找给定元素的后代元素。这些方法可用于查找给定元素在 DOM 中的子元素、孙元素、曾孙元素等等。
以下三种方法可用于遍历 DOM 树中的向下路径
children() - 返回匹配元素的所有直接子元素。
find() - 返回匹配元素的所有后代元素。
children() 方法与 find() 方法的不同之处在于,children() 仅向下遍历 DOM 树一层,而 find() 方法可以向下遍历多层以选择后代元素(子元素、孙元素、曾孙元素等)。
jQuery children() 方法
jQuery 的 children() 方法返回匹配元素的所有直接子元素。以下是该方法的简单语法
$(selector).children([filter])
我们可以在方法中选择性地提供一个 筛选器 选择器。如果提供了筛选器,则元素将通过测试是否与之匹配来进行筛选。
概述
考虑以下 HTML 内容
<div class="great-grand-parent"> <div class="grand-parent"> <ul class="parent"> <li class="child-one">Child One</li> <li class="child-two">Child Two</li> </ul> </div> <div class="grand-parent"> <ul class="parent"> <li class="child-three">Child Three</li> <li class="child-four">Child Four</li> </ul> </div> </div>
现在,如果我们如下使用 children() 方法
$( ".great-grand-parent" ).children().css( "border", "2px solid red" );
它将产生以下结果
<div class="great-grand-parent"> <div class="grand-parent" style="border:2px solid red"> <ul class="parent"> <li class="child-one">Child One</li> <li class="child-two">Child Two</li> </ul> </div> <div class="grand-parent" style="border:2px solid red"> <ul class="parent"> <li class="child-three">Child Three</li> <li class="child-four">Child Four</li> </ul> </div> </div>
示例
让我们尝试以下示例并验证结果
<!doctype html> <html> <head> <title>The jQuery Example</title> <script src="https://tutorialspoint.com/jquery/jquery-3.6.0.js"></script> <script> $(document).ready(function() { $("button").click(function(){ $( ".great-grand-parent" ).children().css( "border", "2px solid red" ); }); }); </script> <style> .great-grand-parent *{display:block; border:2px solid #aaa; color:#aaa; padding:5px; margin:5px;} </style> </head> <body> <div class="great-grand-parent"> <div class="grand-parent" style="width:500px;"> <ul class="parent"> <li class="child-one">Child One</li> <li class="child-two">Child Two</li> </ul> </div> <div class="grand-parent" style="width:500px;"> <ul class="parent"> <li class="child-three">Child Three</li> <li class="child-four">Child Four</li> </ul> </div> </div> <br> <button>Mark Children</button> </body> </html>
jQuery find() 方法
jQuery 的 find() 方法返回匹配元素的所有后代元素。以下是该方法的简单语法
$(selector).find([ilter)
此处,筛选器 选择器对于此方法是必需的。要返回匹配元素的所有后代元素,我们需要传递 * 作为筛选器,否则,如果筛选器作为元素提供,则元素将通过测试是否与之匹配来进行筛选。
概述
考虑以下 HTML 内容
<div class="great-grand-parent"> <div class="grand-parent"> <ul class="parent"> <li class="child-one">Child One</li> <li class="child-two">Child Two</li> </ul> </div> <div class="grand-parent"> <ul class="parent"> <li class="child-three">Child Three</li> <li class="child-four">Child Four</li> </ul> </div> </div>
现在,如果我们如下使用 find("li") 方法
$( ".grand-parent" ).find("li").css( "border", "2px solid red" );
它将产生以下结果
<div class="great-grand-parent"> <div class="grand-parent"> <ul class="parent"> <li class="child-one" style="border:2px solid red">Child One</li> <li class="child-two" style="border:2px solid red">Child Two</li> </ul> </div> <div class="grand-parent" style="border:2px solid red"> <ul class="parent"> <li class="child-three" style="border:2px solid red">Child Three</li> <li class="child-four" style="border:2px solid red">Child Four</li> </ul> </div> </div>
示例
让我们尝试以下示例并验证结果
<!doctype html> <html> <head> <title>The jQuery Example</title> <script src="https://tutorialspoint.com/jquery/jquery-3.6.0.js"></script> <script> $(document).ready(function() { $("button").click(function(){ $( ".grand-parent" ).find("li").css( "border", "2px solid red" ); }); }); </script> <style> .great-grand-parent *{display:block; border:2px solid #aaa; color:#aaa; padding:5px; margin:5px;} </style> </head> <body> <div class="great-grand-parent"> <div class="grand-parent" style="width:500px;"> <ul class="parent"> <li class="child-one">Child One</li> <li class="child-two">Child Two</li> </ul> </div> <div class="grand-parent" style="width:500px;"> <ul class="parent"> <li class="child-three">Child Three</li> <li class="child-four">Child Four</li> </ul> </div> </div> <br> <button>Mark Children</button> </body> </html>
jQuery 遍历参考
您可以在以下页面获取所有 jQuery 方法遍历 DOM 的完整参考:jQuery 遍历参考。
广告