codecamp

jQuery parents() 方法

jQuery parents() 方法

jQuery 遍历方法 jQuery 遍历方法

实例

返回 <span> 的所有祖先元素:

$(document).ready(function(){
$("span").parents().css({"({"color":"red","border":"2px solid red"});
});

Result:

body (great-great-grandparent)
div (great-grandparent)
    ul (grandparent)
  • li (direct parent) span

尝试一下 »

定义和用法

parents() 方法返回被选元素的所有祖先元素。

祖先是父、祖父、曾祖父,依此类推。

DOM 树:该方法从父元素向上遍历 DOM 元素的祖先,直至文档根元素的所有路径(<html>)。

注意:如果 filter 参数为空,该方法将从直接父元素直至 <body> 和 <html> 的所有路径中选取元素集合中的所有祖先。因此传递一个缩小搜索结果范围的选择器表达式是非常有用的。

该方法与 closest() 都是向上遍历 DOM 树,不同点是:

parents()

  • 从父元素开始
  • 沿 DOM 树向上遍历,并返回匹配所传递的表达式的所有祖先
  • 返回包含零个、一个或多个元素的 jQuery 对象

closest()

  • 从当前元素开始
  • 沿 DOM 树向上遍历,并返回匹配所传递的表达式的第一个祖先
  • 返回包含零个或一个元素的 jQuery 对象

其他相关方法:

  • parent() - 返回被选元素的直接父元素
  • parentsUntil() - 返回两个给定参数之间的所有祖先元素

语法

$(selector).parents(filter)

参数 描述
filter 可选。规定缩小搜索祖先元素范围的选择器表达式。

注意:如需返回多个祖先,请使用逗号分隔每个表达式。

实例

更多实例

缩小搜索范围
如何使用 filter 参数来返回 <span> 的所有祖先中的 <ul> 元素。

返回多个祖先
如何使用 filter 参数来返回 <span> 的所有祖先中的 <li> 和 <div> 元素。

通过标签名演示元素的祖先
演示 <span> 元素的祖先。


jQuery 遍历方法 jQuery 遍历方法

温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }