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()可以选择性查找对像,以后再说哦

