Jquery中有多种可以查找节点的方法,今天这篇文章就说几种简单点的,也在日常中经常用到的。
jQuery parent() 方法
parent():查找并返回被选元素的父元素
语法:
$(selector).parent(filter);
例:JQ查找元素的父元素
示例代码:
<!DOCTYPE html> <html> <head> <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js" type="text/javascript"></script> </head> <body> <div id="mochu"> <div class="div"> <p>飞鸟慕鱼博客</p> </div> </div> <script> //$('.div').parent() console.log($('.div').parent()); </script> </body> </html>
打印结果:
注意:parent() 方法是查找的被元素元素的直接父元素,要注意一下。
jQuery.parents() 方法
parents():是查找的被选元素的祖先元素,这里包括父元素
语法:
$(selector).parents(filter);
例:JQ查找并返回指定元素的所有祖先元素
示例代码:
<!DOCTYPE html> <html> <head> <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js" type="text/javascript"></script> </head> <body> <div id="mochu"> <div class="div"> <p class="p">飞鸟慕鱼博客</p> <p>http://www.feiniaomy.com</p> </div> </div> <script> $('.p').parents().each( function(){ console.log($(this)); } ) </script> </body> </html>
打印结果:
jQuery children() 方法
children():方法查找被选元素的所以子元素
语法:
$(selector).children(selector);
例:JQ查找指定元素的所以子元素
示例代码:
//HTML参考上面的例子,省略 <script> $('.div').children().each( function(){ console.log($(this)); } ) </script>
执行结果:
注:children() 方法返回是指定元素的所有的直接子节点,并不是子孙节点和 parent() 方法返回的结果相返
jQuery prev() 方法
prev():返回指定元素的上一个的兄弟节点
语法:
$(selector).prev(filter)
例:JQ查找指定元素的上个兄弟节点
示例代码:
<!DOCTYPE html> <html> <head> <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js" type="text/javascript"></script> </head> <body> <div id="mochu"> <div class="div"> <p class="p">飞鸟慕鱼博客</p> <p class="p2">网址:http://www.feiniaomy.com</p> <p class="p3">博主:墨初</p> </div> </div> <script> //$('.ps').prev(); console.log($('.p2').prev()); </script> </body> </html>
打印结果:
jQuery prevAll() 方法
prevAll():返回所有指定元素之前的兄弟元素
语法:
$(selector).prevAll(selector)
例:JQ查找指定元素之前的所有兄弟元素
示例代码:
<!DOCTYPE html> <html> <head> <script src="https://cdn.staticfile.org/jquery/2.2.4/jquery.min.js" type="text/javascript"></script> </head> <body> <div id="mochu"> <div class="div"> <p class="p">飞鸟慕鱼博客</p> <p class="p2">网址:http://www.feiniaomy.com</p> <p class="p3">博主:墨初</p> </div> </div> <script> $('.p3').prevAll().each(function(){ console.log($(this)); }); </script> </body> </html>
打印结果:
jQuery next() 方法
next():方法可以返回指定元素下一个兄弟元素
语法:
$(selector)..next(selector)
例:JQ查找被选元素的下一个兄弟元素
示例代码:
//HTML代码同上,省略 <script> //$('.p').next() console.log($('.p').next()); </script>
打印结果:
注:next():方法返回的是一个元素,但不是元素的集合
jQuery next()All() 方法
next()All():方法可以返回指定元素之后的所有兄弟元素
语法:
$(selector).nextAll(selector)
例:JQ返回指定元素之后的所有兄弟元素
示例代码:
//HTML同上省略。。 <script> $('.p').nextAll().each(function(){ console.log($(this)); }) </script>
打印结果:
补充资料:
1、parent(),prev(),next()返回的是单个元素对象
2、parents(),children(),prevAll(),nextAll()返回的是多个元素对象的集合
3、单个对象可以使用 console.log() 方法在浏览器的控制台中打印出来
4、多个元素对象的集合,可以使用 each() 遍历出来
5、parents(),children(),prevAll(),nextAll()可以选择性查找对像,以后再说哦