jQuery获取父元素及父节点的方法小结


Posted in Javascript onApril 14, 2016

本文实例总结了jQuery获取父元素及父节点的方法。分享给大家供大家参考,具体如下:

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解:

先举个例子,

<ul class="parent1">
<li><a href="#" id="item1">jquery获取父节点</a></li> 
<li><a href="#">jquery获取父元素</a></li> 
</ul>

我们的目的是通过 id 为 item1 的便签a取到 class 为 parent1 的ul元素,有以下几种方法:

1、parent([expr])

取得一个包含着所有匹配元素的唯一父元素的元素集合。

你可以使用可选的表达式来筛选。

代码如下

$('#item1').parent().parent('.parent1');

2、:parent

匹配含有子元素或者文本的元素

代码如下

$('li:parent');

3、parents([expr])

取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。

代码如下

$('#items').parents('.parent1');

4、closest([expr])

closest会首先检查当前元素是否匹配,如果匹配则直接返回元素本身。如果不匹配则向上查找父元素,一层一层往上,直到找到匹配选择器的元素。如果什么都没找到则返回一个空的jQuery对象。

closest和parents的主要区别是:

① 前者从当前元素开始匹配寻找,后者从父元素开始匹配寻找;
② 前者逐级向上查找,直到发现匹配的元素后 就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;
③ 前者返回0或1个元素,后者可能包含0 个,1个,或者多个元素。

closest对于处理事件委派非常有用。

$('#items1').closest('.parent1');

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
jquery ready函数源代码研究
Dec 06 Javascript
javascript实现跳转菜单的具体方法
Jul 05 Javascript
关于javascript event flow 的一个bug详解
Sep 17 Javascript
在JSP中如何实现MD5加密的方法
Nov 02 Javascript
使用BootStrap建立响应式网页——通栏轮播图(carousel)
Dec 21 Javascript
Vue.js -- 过滤器使用总结
Feb 18 Javascript
用最少的JS代码写出贪吃蛇游戏
Jan 12 Javascript
详解node child_process模块学习笔记
Jan 24 Javascript
JavaScript中严格判断NaN的方法
Feb 16 Javascript
layui实现数据分页功能
Jul 27 Javascript
详解Vue template 如何支持多个根结点
Feb 10 Javascript
原生js实现下拉框选择组件
Jan 20 Javascript
基于RequireJS和JQuery的模块化编程——常见问题全面解析
Apr 14 #Javascript
Jquery实现$.fn.extend和$.extend函数
Apr 14 #Javascript
详解Jquery实现ready和bind事件
Apr 14 #Javascript
一起学写js Calender日历控件
Apr 14 #Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
Apr 14 #Javascript
原生js实现autocomplete插件
Apr 14 #Javascript
jQuery循环遍历子节点并获取值的方法
Apr 14 #Javascript
You might like
php利用单例模式实现日志处理类库
2014/02/10 PHP
php实现aes加密类分享
2014/02/16 PHP
PHP中应该避免使用同名变量(拆分临时变量)
2015/04/03 PHP
WordPress网站性能优化指南
2015/11/18 PHP
javascript web页面刷新的方法收集
2009/07/02 Javascript
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
window.ActiveXObject使用说明
2010/11/08 Javascript
jquery插件冲突(jquery.noconflict)解决方法分享
2014/03/20 Javascript
js改变鼠标的形状和样式的方法
2014/03/31 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
2015/05/06 Javascript
关于JS中二维数组的声明方法
2016/09/24 Javascript
Angular ng-repeat指令实例以及扩展部分
2016/12/26 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
vue+element-ui实现表格编辑的三种实现方式
2018/10/31 Javascript
vue设置动态请求地址的例子
2019/11/01 Javascript
[01:16:16]DOTA2-DPC中国联赛定级赛 RNG vs Phoenix BO3第二场 1月8日
2021/03/11 DOTA
详解Python中的各种转义符\n\r\t
2019/07/10 Python
Python操作redis和mongoDB的方法
2019/12/19 Python
解决pyCharm中 module 调用失败的问题
2020/02/12 Python
python time.strptime格式化实例详解
2021/02/03 Python
CSS3中的Media Queries学习笔记
2016/05/23 HTML / CSS
html5文本内容_动力节点Java学院整理
2017/07/11 HTML / CSS
PHP如何防止SQL注入
2014/05/03 面试题
CSS实现fullpage.js全屏滚动效果的示例代码
2021/03/24 HTML / CSS
总经理岗位职责范本
2014/02/02 职场文书
数控专业自荐书范文
2014/03/16 职场文书
有创意的广告词
2014/03/18 职场文书
运动会演讲稿
2014/05/07 职场文书
市场营销专业求职信
2014/06/17 职场文书
小学数学教研活动总结
2014/07/01 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
教师节简报
2015/07/20 职场文书
2019年最新版见习人员管理制度!
2019/07/08 职场文书
未来,这5大方向都很适合创业
2019/07/22 职场文书
一道JS算法面试题——冒泡、选择排序
2021/04/21 Javascript
python如何利用cv2.rectangle()绘制矩形框
2022/12/24 Python