Jquery搜尋父元素操作方法

來源:互聯網
上載者:User

Jquery搜尋父元素操作方法

 這篇文章主要介紹了Jquery搜尋父元素操作方法,執行個體分析了parents、cloest、parent、parentsUtil及offsetParent方法的提示,需要的朋友可以參考下

 

 

本文執行個體講述了Jquery搜尋父元素操作方法。分享給大家供大家參考。具體分析如下:

1. parents()方法

格式:

代碼如下:

parents([selector])

用於擷取當前匹配元素集合中每個元素的祖先元素,根據需要還可以使用一個選取器進行篩選。
如:

代碼如下:

$("p").parents().css("border", "1px solid blue);

 

2. cloest方法

格式:

代碼如下:

closest(selector[, context])

該方法從元素本身開始,逐級向上階項目匹配,並返回最先匹配的元素。
如:

代碼如下:

$("a").closest("div").css("border", "1px solid blue");

 

cloest()和parents()方法的主要區別如下:

① 前者從當前元素匹配尋找,後者從父元素開始匹配尋找

② 前者逐級向上尋找,直到發現匹配的元素後就停止了,後者一直向上尋找直到根項目,然後把這些元素放進一個臨時集合中,再用給定的選取器運算式去過濾。

③ 前者返回0或者1個元素,後者可能包含0個、1個或者多個元素。

3. parent()方法

格式:

代碼如下:

parent([selector])

用於擷取當前匹配元素集合中每個元素的父元素,根據需要,還可以使用一個選取器進行篩選。

 

如:

代碼如下:

$("p").parent().css("border", "1px solid blue");

 

4. parentsUtil()方法

格式:

代碼如下:

parentsUtil([selector])

用於擷取當前匹配元素集合中每個元素的祖先元素,直至給定選取器匹配的元素(但不包括該元素)

 

如:

代碼如下:

$("li#li2").parentsUtil("#ul1_li2").css("background", "#FCF");

 

5. offsetParent()方法

用於搜尋第一個匹配元素的已定位的父元素,僅對可見元素有效,文法格式如下:

代碼如下:

offsetParent()

 

該方法尋找第一個匹配元素的已定位元素,並返回由該元素封裝成的jQuery對象。

綜合例子:

代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>從文檔中搜尋指定元素的祖輩元素和父元素</title>
<script src="jquery-1.4.2.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){
$("p").parent().css("border","1px solid #999"); //給p元素的父元素添加邊框樣式
$("p").closest("div").css("color","blue"); //給指定p元素的第一個匹配的上階項目設定字型顏色
$("li").parents("div").css("background","#FCF").css("height","40px");//設定li祖輩元素中div元素的樣式。
$("p").css("background","#99C");
})
</script>
<style type="text/css">
#top_div{ margin-top:4px; margin-left:30px;}
#top_div ul{ display:inline; list-style-type:none; margin:0px;}
#top_div li{ float:left; display:block; text-align:left; margin-left:2px; width:80px; padding-top:10px;}
#main_div{ margin-top:50px; margin-left:30px;}
</style>
</head>

<body>
<div id="top_div">
<ul>
<li>新聞</li>
<li>網頁</li>
<li>貼吧</li>
<li>知道</li>
<li>MP3</li>
<li>圖片</li>
<li>視頻</li>
<li>地圖</li>
</ul>
</div>
<div id="main_div">
<h3>標題一</h3>
<p>段落一</p>
<h3>標題二</h3>
<p>段落二</p>
<h3>標題三</h3>
<p>段落三</p>
</div>

</body>
</html>

 

運行效果如所示:

希望本文所述對大家的jQuery程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.