Jquery搜索父元素操作方法

字號(hào):


    這篇文章主要介紹了Jquery搜索父元素操作方法,實(shí)例分析了parents、cloest、parent、parentsUtil及offsetParent方法的使用技巧,需要的朋友可以參考下
    本文實(shí)例講述了Jquery搜索父元素操作方法。分享給大家供大家參考。具體分析如下:
    1. parents()方法
    格式:
    代碼如下:
    parents([selector])
    用于獲取當(dāng)前匹配元素集合中每個(gè)元素的祖先元素,根據(jù)需要還可以使用一個(gè)選擇器進(jìn)行篩選。
    如:
    代碼如下:
    $("p").parents().css("border", "1px solid blue);
    2. cloest方法
    格式:
    代碼如下:
    closest(selector[, context])
    該方法從元素本身開(kāi)始,逐級(jí)向上級(jí)元素匹配,并返回最先匹配的元素。
    如:
    代碼如下:
    $("a").closest("div").css("border", "1px solid blue");
    cloest()和parents()方法的主要區(qū)別如下:
    ① 前者從當(dāng)前元素匹配查找,后者從父元素開(kāi)始匹配查找
    ② 前者逐級(jí)向上查找,直到發(fā)現(xiàn)匹配的元素后就停止了,后者一直向上查找直到根元素,然后把這些元素放進(jìn)一個(gè)臨時(shí)集合中,再用給定的選擇器表達(dá)式去過(guò)濾。
    ③ 前者返回0或者1個(gè)元素,后者可能包含0個(gè)、1個(gè)或者多個(gè)元素。
    3. parent()方法
    格式:
    代碼如下:
    parent([selector])
    用于獲取當(dāng)前匹配元素集合中每個(gè)元素的父元素,根據(jù)需要,還可以使用一個(gè)選擇器進(jìn)行篩選。
    如:
    代碼如下:
    $("p").parent().css("border", "1px solid blue");
    4. parentsUtil()方法
    格式:
    代碼如下:
    parentsUtil([selector])
    用于獲取當(dāng)前匹配元素集合中每個(gè)元素的祖先元素,直至給定選擇器匹配的元素(但不包括該元素)
    如:
    代碼如下:
    $("li#li2").parentsUtil("#ul1_li2").css("background", "#FCF");
    5. offsetParent()方法
    用于搜索第一個(gè)匹配元素的已定位的父元素,僅對(duì)可見(jiàn)元素有效,語(yǔ)法格式如下:
    代碼如下:
    offsetParent()
    該方法查找第一個(gè)匹配元素的已定位元素,并返回由該元素包裝成的jQuery對(duì)象。
    綜合例子:
    代碼如下:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
    <html xmlns="">
    <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元素的第一個(gè)匹配的上級(jí)元素設(shè)置字體顏色
    $("li").parents("div").css("background","#FCF").css("height","40px");//設(shè)置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>網(wǎng)頁(yè)</li>
    <li>貼吧</li>
    <li>知道</li>
    <li>MP3</li>
    <li>圖片</li>
    <li>視頻</li>
    <li>地圖</li>
    </ul>
    </div>
    <div id="main_div">
    <h3>標(biāo)題一</h3>
    <p>段落一</p>
    <h3>標(biāo)題二</h3>
    <p>段落二</p>
    <h3>標(biāo)題三</h3>
    <p>段落三</p>
    </div>
    </body>
    </html>
    運(yùn)行效果如下圖所示:
    名單
    Jquery搜索父元素操作方法
    希望本文所述對(duì)大家的jQuery程序設(shè)計(jì)有所幫助。