例
返回的始祖<span>這是一個<ul>元素:
$(document).ready(function(){
$("span").closest("ul").css({"color": "red", "border": "2px
solid red"});
});
結果:
body (great-great-grandparent)
div (great-grandparent)
ul (second ancestor - second grandparent) ul (first ancestor -
first grandparent) - li (direct parent) span
試一試» 定義和用法
在closest()方法返回所選元素的始祖。
祖先是父母,祖父母,曾祖父母,依此類推。
DOM樹:這從目前的元素遍歷方法向上,一路攀升到文檔的根元素(<html>)找到DOM元素的始祖。
此方法類似於parents()因為它們既向上遍歷DOM樹。 的不同之處如下:
closest()
- 與當前元素開始
- 遊記了DOM樹,並返回所傳遞的表達式匹配的第一個(單)的祖先
- 返回的jQuery對象包含零或一個元素
parents()
- 與父元素開始
- 遊記了DOM樹,並返回所傳遞的表達式匹配所有祖先
- 返回的jQuery對象包含零或一個以上的元素
其他相關的方法:
- parent() -返回所選元素的直接父元素
- parentsUntil() -返回兩個給定的參數之間的所有元素祖先
句法
返回所選元素的始祖:
$(selector).closest( filter )
使用DOM上下文來查詢DOM樹內返回始祖:
$(selector).closest( filter,context )
參數 | 描述 |
---|---|
filter | 需要。 指定一個選擇器表達式,元素或jQuery對象來縮小搜索始祖 |
context | 可選的。 DOM元素內的匹配元件可發現 |
試一試 - 示例
返回的始祖<span>這是一個<span>元素
因為這種方法與目前的元素,第一個開始搜索<span>的<span>將返回<span>
傳遞一個DOM元素在其中上下文搜索的第一個祖先元素
使用這兩個參數,以在DOM元素作為內其中搜索所述第一上下文傳<ul>元素。