最新的Web开发教程
 

jQuery closest() Method

<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上下文来查询DOM树内返回始祖:

$(selector).closest( filter,context )

参数 描述
filter 需要。 指定一个选择器表达式,元素或jQuery对象来缩小搜索始祖
context 可选的。 DOM元素内的匹配元件可发现

试一试 - 示例

返回的始祖<span>这是一个<span>元素
因为这种方法与目前的元素,第一个开始搜索<span><span>将返回<span>

传递一个DOM元素在其中上下文搜索的第一个祖先元素
使用这两个参数,以在DOM元素作为内其中搜索所述第一上下文传<ul>元素。


<jQuery的遍历方法