jQuery获取父元素节点、子元素节点及兄弟元素节点的方法


Posted in Javascript onApril 14, 2016

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

先来看这段html代码,整个取节点(父、子、兄弟等)的方法都是围绕这段代码来的:

<ul class="par">
  <li id="firstli">
    <h3 class="title">条目一</h3>
    <ul class="par">
      <li id="dwtedx">第一项</li>
      <li>第二项</li>
    </ul>
  </li>
</ul>

JQUERY 父节点的获取:

jquery获取父元素方法比较多、比如parent()、parents()、closest()、find,first-child这些都能帮你实现查找父节点、子节点、兄弟节点

如我们利用parent()来获取父节点

$("#dwtedx").parent().parent();//取得id为firstli的li节点
$("#dwtedx").parent().parent(".par");//取得最上面的ul节点
$("#dwtedx").parent(".par");
//取得向上第一层的ul节点 以上是通过parent的方式来获取父节点的、大家可以根据自己项目需要来选择方法哈

下面、我们主要来讲一下 parents() 和 closest() 两个方法的区别

1、closest从当前元素开始匹配寻找、parents从父元素开始匹配寻找

2、closest逐级向上查找、直到发现匹配的元素后 就停止了、parents一直向上查找直到根元素、然后把这些元素放进一个临时集合中、再用给定的选择器表达式去过滤

3、closest返回0或1个元素、parents可能包含0 个、1个、或者多个元素

代码可以这样写:

$('#dwtedx').parents('.par');//可以找出所有class为.par的节点
$('#dwtedx').closest('.par'); //可以找出一个父节点、就是上面一层的那个

JQUERY 兄弟节点的获取

jQuery兄弟节点获取、我们的思路是通过当前节点找到父节点、然后通过父节点去找到子节点、代码如下

$(".title").parent().find('ul');
//找到自己的兄弟节点ul 就是通过先找到 h3 与 ul 共同的父节点 li 然后来用 find() 找到 ul

还有一种方法是使用 siblings() 函数、代码如下

$(".title").siblings('ul');
//找到自己的兄弟节点ul

JQUERY 子节点的获取

匹配第一个子元素 :first 只匹配一个元素、而此选择符将为每个父元素匹配一个子元素

$(".par:first-child");
//取得id为firstli的节点

通过选择器去获取、代码如下:

$('#firstli h3.title');
//取得条目一的h3

使用find()函数、上面已经说过了、用法一样

$("#firstli").find("h3");
//找到子兄弟节点h3

使用children()函数、代码如下

$("#firstli").children("h3.title");
//取得子节点h3、class为title

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

Javascript 相关文章推荐
jQuery判断元素是否存在的可靠方法
May 06 Javascript
一个JS函数搞定网页标题(title)闪动效果
May 13 Javascript
JavaScript表单验证实例之验证表单项是否为空
Jan 10 Javascript
Angularjs 实现分页功能及示例代码
Sep 14 Javascript
微信小程序 教程之WXSS
Oct 18 Javascript
微信小程序开发一键登录 获取session_key和openid实例
Nov 23 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
Feb 09 Javascript
Vue如何从1.0迁移到2.0
Oct 19 Javascript
深入浅析Vue中的slots/scoped slots
Apr 03 Javascript
mpvue项目中使用第三方UI组件库的方法
Sep 30 Javascript
如何在Angular应用中创建包含组件方法示例
Mar 23 Javascript
js与jquery获取input输入框中的值实例讲解
Feb 27 jQuery
原生js实现autocomplete插件
Apr 14 #Javascript
jQuery循环遍历子节点并获取值的方法
Apr 14 #Javascript
基于jQuery实现音乐播放试听列表
Apr 14 #Javascript
js仿3366小游戏选字游戏
Apr 14 #Javascript
Javascript实现鼠标框选操作  不是点击选取
Apr 14 #Javascript
Node.js实现数据推送
Apr 14 #Javascript
node.js实现端口转发
Apr 14 #Javascript
You might like
利用递归把多维数组转为一维数组的函数
2006/10/09 PHP
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
PHP中的排序函数sort、asort、rsort、krsort、ksort区别分析
2014/08/18 PHP
php实现用户注册密码的crypt加密
2017/06/08 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
2019/04/09 PHP
实现复选框全选/全不选切换
2006/12/23 Javascript
Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
2008/12/19 Javascript
为javascript添加String.Format方法
2020/08/11 Javascript
JavaScript插入动态样式实现代码
2012/02/22 Javascript
jQuery Ajax请求状态管理器打包
2012/05/03 Javascript
使用jQuery Ajax功能时需要注意的一个问题(内存溢出)
2012/05/30 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
含有CKEditor的表单如何提交
2014/01/09 Javascript
JS完整获取IE浏览器信息包括类型、版本、语言等等
2014/05/22 Javascript
jquery获取radio值(单选组radio)
2014/10/16 Javascript
Angular.js中上传指令ng-upload的基本使用教程
2017/07/30 Javascript
JS实现图片放大镜插件详解
2017/11/06 Javascript
详解webpack babel的配置
2018/01/09 Javascript
js+SVG实现动态时钟效果
2018/07/14 Javascript
vue 地区选择器v-distpicker的常用功能
2019/07/23 Javascript
Vue+Element实现网页版个人简历系统(推荐)
2019/12/31 Javascript
JavaScript中数组去重的5种方法
2020/07/04 Javascript
vue动态设置路由权限的主要思路
2021/01/13 Vue.js
简单介绍Ruby中的CGI编程
2015/04/10 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
详解Python:面向对象编程
2019/04/10 Python
django创建最简单HTML页面跳转方法
2019/08/16 Python
Pytorch 实现计算分类器准确率(总分类及子分类)
2020/01/18 Python
Python3爬虫中pyspider的安装步骤
2020/07/29 Python
Appium+Python实现简单的自动化登录测试的实现
2021/01/26 Python
台湾良兴购物网:EcLife
2019/12/01 全球购物
应届毕业生求职信
2013/11/30 职场文书
竞聘副主任科员演讲稿
2014/01/11 职场文书
会议接待欢迎词
2014/01/12 职场文书
工作分析计划书
2014/04/30 职场文书
机电专业毕业生求职信
2014/07/01 职场文书