jQuery常见的遍历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="https://libs.baidu.com/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> <div>div(曾祖父) <ul>ul(祖父) <li>li(直接父) <span>span</span> </li> </ul> </div> <div>div(祖父) <p>p(直接父) <span>span</span> </p> </div> </div> </body> </html>

运行结果:

jQuery常见的遍历DOM操作详解

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="https://libs.baidu.com/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>body(增曾祖父) <div>div(曾祖父) <ul>ul(祖父) <li>li(直接父) <span>span</span> </li> </ul> </div> </body> </html>

运行结果:

jQuery常见的遍历DOM操作详解

向下遍历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="https://libs.baidu.com/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>div(当前元素) <p>p(子) <span>span(孙)</span> </p> <p>p(子) <span>span(孙)</span> </p> </div> </body> </html>

运行结果:

jQuery常见的遍历DOM操作详解

find()方法

<!DOCTYPE html> <html> <head> <style> .descendants *{ display:block; border:2px solid lightgrey; color:lightgrey; padding:5px; margin:15px; } </style> <script src="https://libs.baidu.com/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>div(current element) <p>P子 <span>span(孙)</span> </p> <p>p子 <span>span(孙)</span> </p> </div> </body> </html>

运行结果:

jQuery常见的遍历DOM操作详解

返回<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="https://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script> $(document).ready(function(){ $("h2").siblings().css({"color":"red","border":"2px solid red"}); }); </script> </head> <body> <div>div(父) <p>p</p> <span>span</span> <h2>h2</h2> <h3>h3</h3> <p>p</p> </div> </body> </html>

运行结果:

jQuery常见的遍历DOM操作详解

jQuery遍历 过滤

first()方法:返回被选元素的首个元素

last()方法:返回被选元素的最后一个元素

eq()方法:返回被选元素中带有指定索引号的元素

filter()方法:允许自己规定一个标准,不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回。

not()方法:返回不匹配的所有元素

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/3b377a443f2a08bf40f1eb7234020901.html