Latest web development tutorials

jQuery closest() 方法

jQuery 遍歷方法 jQuery遍歷方法

實例

返回<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 context 查找的DOM 樹中的第一個祖先元素:

$(selector).closest( filter,context )

参数 描述
filter 必需。规定缩小搜索祖先元素范围的选择器表达式、元素或 jQuery 对象。
context 可选。在其内可以找到匹配元素的 DOM 元素。

實例

更多實例

返回<span>的第一個祖先元素,是一個<span>元素
因為該方法從當前元素開始,搜索<span> 的第一個<span>,將返回<span>。

在DOM元素中作為context進行傳遞,以便搜索第一個祖先元素
使用兩個參數在DOM 元素中作為context 進行傳遞,以便搜索第一個<ul> 元素。


jQuery 遍歷方法 jQuery遍歷方法