jQuery常见的遍历DOM操作详解
网络编程 2021-07-04 16:46www.168986.cn编程入门
这篇文章主要介绍了jQuery常见的遍历DOM操作,结合实例形式详细分析了针对DOM节点的parent()、parents()、parentsUntil()、find()、eq()、filter()等各种遍历操作相关函数与使用技巧,需要的朋友可以参考下
本文实例了jQuery常见的遍历DOM操作。分享给大家供大家参考,具体如下
向上遍历DOM树
- .parent():返回被选元素的直接父元素,该方法只会向上一级对DOM树进行遍历
- .parents():返回被选元素的所有祖先元素,一直向上遍历,直到文档的根元素(html)
- .parentsUntil():返回介于两个给定元素之间的所有祖先元素
<!DOCTYPE html> <html> <head> <style> .ancestors { display:block; border:2px solid lightgrey; color:lightgrey; padding:5px; margin:15px; } </style> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script > $(document).ready(function(){ $("span").parent().css({"color":"red","border":"2px solid red"}); }); </script> </head> <body> <div class="ancestors"> <div style="width:500;">div(曾祖父) <ul>ul(祖父) <li>li(直接父) <span>span</span> </li> </ul> </div> <div style="width:500px;">div(祖父) <p>p(直接父) <span>span</span> </p> </div> </div> </body> </html>
运行结果
parentsUntil()
方法
$(document).ready(function(){ $("span").parentsUntil("div"); });
<!DOCTYPE html> <html> <head> <style> .ancestors { display:block; border:2px solid lightgrey; color:lightgrey; padding:5px; margin:15px; } </style> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("span").parentsUntil("div").css({"color":"red","border":"2px solid red"}); }); </script> </head> <body class="ancestors">body(增曾祖父) <div style="width:500px;">div(曾祖父) <ul>ul(祖父) <li>li(直接父) <span>span</span> </li> </ul> </div> </body> </html>
运行结果
向下遍历DOM树
- .children():返回被选元素的所有直接子元素,该方法只会向下一级对DOM树进行遍历
- .find():返回被选元素的后代元素,一直向下直到一个后代
children()
方法
<!DOCTYPE html> <html> <head> <style> .descendants { display:block; border:2px solid lightgrey; color:lightgrey; padding:5px; margin:15px; } </style> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("div").children().css({"color":"red","border":"2px solid red"}); $("div").children("p.1").css({"color":"red","border":"2px solid red"}); }); </script> </head> <body> <div class="descendants" style="width:500px;">div(当前元素) <p class="1">p(子) <span>span(孙)</span> </p> <p class="2">p(子) <span>span(孙)</span> </p> </div> </body> </html>
运行结果
find()
方法
<!DOCTYPE html> <html> <head> <style> .descendants { display:block; border:2px solid lightgrey; color:lightgrey; padding:5px; margin:15px; } </style> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("div").find("span").css({"color":"red","border":"2px solid red"}); }); </script> </head> <body> <div class="descendants" style="width:500px;">div(current element) <p>P子 <span>span(孙)</span> </p> <p>p子 <span>span(孙)</span> </p> </div> </body> </html>
运行结果
返回<div>
所有后代
$(document).ready(function(){ $("div").find(""); });
水平遍历DOM树
- .siblings():返回被选元素的所有同胞
- .next():返回被选元素下一个同胞元素
- .nextAll():返回被选元素的所有跟随的同胞元素
- .nextUntil():返回介于两个给定参数之间的所有跟随的同胞元素
- .prev():返回被选元素上一个同胞元素
- .prevAll():返回被选元素的所有之前的同胞元素
- .prevUntil():返回介于两个给定参数之间的所有之前的同胞元素
<!DOCTYPE html> <html> <head> <style> .siblings { display:block; border:2px solid lightgrey; color:lightgrey; padding:5px; margin:15px; } </style> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("h2").siblings().css({"color":"red","border":"2px solid red"}); }); </script> </head> <body class="siblings"> <div>div(父) <p>p</p> <span>span</span> <h2>h2</h2> <h3>h3</h3> <p>p</p> </div> </body> </html>
运行结果
jQuery遍历 过滤
- first()方法:返回被选元素的首个元素
- last()方法:返回被选元素的一个元素
- eq()方法:返回被选元素中带有指定索引号的元素
- filter()方法:允许自己规定一个标准,不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回。
- not()方法:返回不匹配的所有元素
<!DOCTYPE html> <html> <head> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("div p").first().css("background-color","yellow"); }); </script> </head> <body> <h1>我心在北朝、</h1> <div> <p>田野上</p> </div> <div> <p>红彤彤的野花</p> </div> <p>玲珑剔透</p> </body> </html>
运行结果
eq()
方法的使用
<!DOCTYPE html> <html> <head> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("p").eq(1).css("background-color","yellow"); }); </script> </head> <body> <h1>我心在南朝、</h1> <p>田野上</p> <p>红彤彤的野花</p> <p>玲珑剔透</p> <p>我爱你</p> </body> </html>
运行结果
filter()
方法的使用
<!DOCTYPE html> <html> <head> <script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("p").filter(".intro").css("background-color","yellow"); }); </script> </head> <body> <h1>我心在南朝、</p> <p>田野上</p> <p class="intro">红彤彤的草莓</p> <p class="intro">玲玲剔透</p> <p>我爱你</p> </body> </html>
运行结果
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具测试上述代码运行效果。
更多关于jQuery相关内容还可查看本站专题《》、《》、《》、《》、《》、《》及《》
希望本文所述对大家jQuery程序设计有所帮助。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程