祖先是父、祖父或曾祖父等等。
通過 jQuery,您能夠向上遍歷 DOM 樹,以查找元素的祖先。
向上遍歷 DOM 樹
這些 jQuery 方法很有用,它們用于向上遍歷 DOM 樹:
parent()
parents()
parentsUntil()
parent() 方法
parent() 方法返回被選元素的直接父元素。
該方法只會(huì)向上一級(jí)對(duì) DOM 樹進(jìn)行遍歷。
下面的例子返回每個(gè) <span> 元素的的直接父元素:
$(document).ready(function(){
$("span").parent();
});
parents() 方法
parents() 方法返回被選元素的所有祖先元素,它一路向上直到文檔的根元素 (<html>)。
下面的例子返回所有 <span> 元素的所有祖先:
$(document).ready(function(){
$("span").parents();
});
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
.ancestors *
{
display: block;
border: 2px solid lightgrey;
color: lightgrey;
padding: 5px;
margin: 15px;
}
</style>
<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("span").parents().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>

image.png
parentsUntil() 方法
parentsUntil() 方法返回介于兩個(gè)給定元素之間的所有祖先元素。
下面的例子返回介于 <span> 與 <div> 元素之間的所有祖先元素:
$(document).ready(function(){
$("span").parentsUntil("div");
});

image.png