溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

jquery尋找父級(jí)的方法是什么

發(fā)布時(shí)間:2022-11-23 09:36:07 來(lái)源:億速云 閱讀:260 作者:iii 欄目:web開(kāi)發(fā)

本文小編為大家詳細(xì)介紹“jquery尋找父級(jí)的方法是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“jquery尋找父級(jí)的方法是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

4個(gè)方法:1、parent(),可以查找當(dāng)前元素的“父元素”,語(yǔ)法“$(選擇器).parent(表達(dá)式)”;2、parents(),可查找所選元素的祖先元素,語(yǔ)法“$(選擇器).parents(表達(dá)式)”;3、parentsUntil(),可查找指定范圍的所有祖先元素,語(yǔ)法“$(選擇器).parentsUntil(表達(dá)式)”;4、closest(),可被選元素的第一個(gè)祖先元素。

jquery尋找父級(jí)的方法

  • parent()

  • parents()

  • parentsUntil()

  • closest()

方法一:parent()

在jQuery中,我們可以使用parent()方法來(lái)查找當(dāng)前元素的“父元素”。記住,元素只有一個(gè)父元素。

語(yǔ)法:

$(selector).parent(expression)

說(shuō)明:參數(shù)expression表示jQuery選擇器表達(dá)式,用來(lái)過(guò)濾父元素。當(dāng)參數(shù)省略時(shí),則選擇所有的父元素。如果參數(shù)不省略,則選擇符合條件的父元素。

元素不是只有一個(gè)父元素么?為什么還有“符合條件的父元素”這一說(shuō)法?對(duì)于這個(gè),可以看看下面的例子。

舉例:

<!DOCTYPE html>
<html>
	<head>
		<script src="js/jquery-3.6.1.min.js"></script>
		<script type="text/javascript">
			$(function() {
				$("p").parent(".lvye").css("color", "red");
			})
		</script>
	</head>
	<body>
		<div>
			<p>億速云jQuery入門(mén)教程</p>
		</div>
		<div class="lvye">
			<p>億速云jQuery入門(mén)教程</p>
		</div>
		<div>
			<p>億速云jQuery入門(mén)教程</p>
		</div>
	</body>
</html>

效果如下:

jquery尋找父級(jí)的方法是什么

方法二:parents()

parents()方法和parent()方法相似,都是用來(lái)查找所選元素的祖先元素。但是這兩個(gè)方法也有著本質(zhì)的區(qū)別。

其實(shí)這2個(gè)方法也很好區(qū)分,parent是單數(shù)形式,查找的祖先元素只有1個(gè),那就是父元素。而parents是復(fù)數(shù)形式,查找的祖先元素當(dāng)然是所有的祖先元素。

語(yǔ)法:

$(selector).parents(expression)

說(shuō)明:參數(shù)expression表示jQuery選擇器表達(dá)式字符串,用來(lái)過(guò)濾祖先元素。當(dāng)參數(shù)省略時(shí),則選擇所有的祖先元素。如果參數(shù)不省略,則選擇符合條件的祖先元素。

舉例:

<!DOCTYPE html>
<html>
	<head>
		<script src="js/jquery-3.6.1.min.js"></script>
		<script type="text/javascript">
			$(function() {
				$("#btn").click(function() {
					var parents = $("span").parents()
						.map(function() {
							return this.tagName;
						})
						.get().join(",");
					alert("span元素的所有祖先元素為:" + parents.toLowerCase());
				});
			})
		</script>
	</head>
	<body>
		<div>
			<p><strong><span>jQuery入門(mén)教程</span></strong></p>
		</div>
		<input id="btn" type="button" value="獲取" />
	</body>
</html>

效果如下:

jquery尋找父級(jí)的方法是什么

jquery尋找父級(jí)的方法是什么

方法三:parentsUntil()

parentsUntil()方法是對(duì)parents()方法的一個(gè)補(bǔ)充,它可以查找指定范圍的所有祖先元素,相當(dāng)于在parents()方法返回集合中截取部分祖先元素。

語(yǔ)法:

$(selector).parentsUntil(expression)

說(shuō)明:參數(shù)expression表示jQuery選擇器表達(dá)式字符串,用來(lái)過(guò)濾祖先元素。當(dāng)參數(shù)省略時(shí),則選擇所有的祖先元素。如果參數(shù)不省略,則選擇符合條件的祖先元素。

參數(shù)selector表示jQuery選擇器表達(dá)式字符串,用以確定范圍的祖先元素。該參數(shù)為可選,如果省略,則將匹配所有祖先元素,這一點(diǎn)跟parents()方法查找結(jié)果是一樣的。

<!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="js/jquery-3.6.1.min.js"></script>
<script>
$(document).ready(function(){
	$("span").parentsUntil("div").css({"color":"red","border":"2px solid red"});
});
</script>
</head>

<body class="ancestors"> body (曾曾祖父節(jié)點(diǎn))
  <div style="width:500px;">div (曾祖父節(jié)點(diǎn))
    <ul>ul (祖父節(jié)點(diǎn))  
      <li>li (直接父節(jié)點(diǎn))
        <span>span</span>
      </li>
    </ul>   
  </div>
</body>

<!-- 在這個(gè)例子中,我們選擇在span和div元素之間的所有祖先元素。 -->
</html>

jquery尋找父級(jí)的方法是什么

方法4:closest()

closest() 方法返回被選元素的第一個(gè)祖先元素。

  • 從當(dāng)前元素開(kāi)始

  • 沿 DOM 樹(shù)向上遍歷,并返回匹配所傳遞的表達(dá)式的第一個(gè)單一祖先

  • 返回包含零個(gè)或一個(gè)元素的 jQuery 對(duì)象

語(yǔ)法:

$(selector).closest(expression)

示例:返回 <span> 的第一個(gè)父元素,是一個(gè) <li> 元素:

<!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="js/jquery-3.6.1.min.js"></script>
<script>
$(document).ready(function(){
	$("span").closest("li").css({"color":"red","border":"2px solid red"});
});
</script>
</head>

<body class="ancestors">body (曾曾祖先節(jié)點(diǎn))
	<div style="width:500px;">div (曾祖先節(jié)點(diǎn))
		<ul>ul (第二祖先 - 第二祖先節(jié)點(diǎn)) 
			<ul>ul (第一祖先 - 第一祖先節(jié)點(diǎn))
				<li>li (直接父節(jié)點(diǎn))
					<span>span</span>
				</li>
			</ul>
		</ul>   
	</div>
</body>
</html>

jquery尋找父級(jí)的方法是什么

讀到這里,這篇“jquery尋找父級(jí)的方法是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI