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 相关文章推荐
nicejforms——美化表单不用愁
Feb 20 Javascript
Extjs学习笔记之四 工具栏和菜单
Jan 07 Javascript
基于jquery的图片懒加载js
Jun 30 Javascript
jquery中的常用事件bind、hover、toggle等示例介绍
Jul 21 Javascript
js动态生成Html元素实现Post操作(createElement)
Sep 14 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
Nov 07 Javascript
基于jQuery的ajax方法封装
Jul 14 Javascript
超全面的JavaScript开发规范(推荐)
Jan 21 Javascript
JS路由跳转的简单实现代码
Sep 21 Javascript
vue.js做一个简单的编辑菜谱功能
May 08 Javascript
Vue内部渲染视图的方法
Sep 02 Javascript
Paypal支付不完全指北
Jun 04 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 CLI模式下的多进程应用分析
2013/06/03 PHP
使用PHP计算两个路径的相对路径
2013/06/14 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
ThinkPHP快速入门实例教程之数据分页
2014/07/01 PHP
php实现paypal 授权登录
2015/05/28 PHP
php实现多城市切换特效
2015/08/09 PHP
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
非常有用的9个PHP代码片段
2016/04/06 PHP
JavaScript 面向对象的 私有成员和公开成员
2010/05/13 Javascript
js使用函数绑定技术改变事件处理程序的作用域
2011/12/26 Javascript
JQuery加载图片自适应固定大小的DIV
2013/09/12 Javascript
JS onmousemove鼠标移动坐标接龙DIV效果实例
2013/12/16 Javascript
JavaScript中return false的用法
2015/03/12 Javascript
js实现表单检测及表单提示的方法
2015/08/14 Javascript
AngularJS中的包含详细介绍及实现示例
2016/07/28 Javascript
Bootstrap实现圆角、圆形头像和响应式图片
2016/12/14 Javascript
利用ES6的Promise.all实现至少请求多长时间的实例
2017/08/28 Javascript
原生JS获取元素的位置与尺寸实现方法
2017/10/18 Javascript
使用3D引擎threeJS实现星空粒子移动效果
2020/09/13 Javascript
Vue header组件开发详解
2018/01/26 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
Node.js API详解之 net模块实例分析
2020/05/18 Javascript
Vue 基于 vuedraggable 实现选中、拖拽、排序效果
2020/05/18 Javascript
微信小程序实现上传多张图片、删除图片
2020/07/29 Javascript
python网络编程之TCP通信实例和socketserver框架使用例子
2014/04/25 Python
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
python3.X 抓取火车票信息【修正版】
2018/06/19 Python
Win10下Python3.7.3安装教程图解
2019/07/08 Python
Flask配置Cors跨域的实现
2019/07/12 Python
pycharm 添加解释器的方法步骤
2020/08/31 Python
Html5新标签解释及用法
2012/02/17 HTML / CSS
德国滑雪和户外用品网上商店:XSPO
2019/10/30 全球购物
如何将无状态会话Bean发布为WEB服务,只有无状态会话Bean可以发布为WEB服务?
2015/12/03 面试题
《小白兔和小灰兔》教学反思
2014/02/18 职场文书
项目投资意向书范本
2015/05/09 职场文书
医院岗前培训心得体会
2016/01/08 职场文书