jQuery parents() 方法
jQuery parents() 方法返回被选元素的所有祖先元素
祖先是父、祖父、曾祖父,依此类推
语法
$( selector ).parents( filter )
参数 | 描述 |
---|---|
filter | 可选。规定缩小搜索祖先元素范围的选择器表达式 注意:如需返回多个祖先,请使用逗号分隔每个表达式 |
说明
-
DOM 树: 该方法从父元素向上遍历 DOM 元素的祖先,直至文档根元素的所有路径 ( <html>)
-
如果 filter 参数为空,该方法将从直接父元素直至 <body> 和 <html> 的所有路径中选取元素集合中的所有祖先
因此传递一个缩小搜索结果范围的选择器表达式是非常有用的
-
该方法与 closest() 都是向上遍历 DOM 树,不同点是
parents()
- 从父元素开始
- 沿 DOM 树向上遍历,并返回匹配所传递的表达式的所有祖先
- 返回包含零个、一个或多个元素的 jQuery 对象
closest()
- 从当前元素开始
- 沿 DOM 树向上遍历,并返回匹配所传递的表达式的第一个祖先
- 返回包含零个或一个元素的 jQuery 对象
其它相关方法
-
返回被选元素的直接父元素
-
返回两个给定参数之间的所有祖先元素
范例
下面的范例返回 <span> 的所有祖先元素
$(document).ready(function(){ $("span").parents().css({"color":"red","border":"2px solid red"}); });
更多范例
-
如何使用 filter 参数来返回 <span> 的所有祖先中的 <ul> 元素
-
如何使用 filter 参数来返回 <span> 的所有祖先中的 <li> 和 <div> 元素
-
演示 <span> 元素的祖先