html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

jQuery遍历DOM的父级元素、子级元素和同级元素的方法总结_jquery_

[ ] 已经帮助:人解决问题

如下图,显示了HTML中的结构树,通过 JQuery 遍历,您能够从被选(当前的)元素开始,轻松地在家族树中向上移动(祖先),向下移动(子孙),水平移动(同胞)。这种移动被称为对 DOM 进行遍历。m6eHTML5中文学习网 - HTML5先行者学习网
m6eHTML5中文学习网 - HTML5先行者学习网

201677173533571.jpg (350×165)m6eHTML5中文学习网 - HTML5先行者学习网

遍历 - 父级(祖先)m6eHTML5中文学习网 - HTML5先行者学习网
向上遍历DOM数。m6eHTML5中文学习网 - HTML5先行者学习网

通过如下三个方法,我们可以获取父级元素:m6eHTML5中文学习网 - HTML5先行者学习网

  1. parent()
  2. parents()
  3. parentsUntil()

1.JQuery parent()m6eHTML5中文学习网 - HTML5先行者学习网

parent() 方法返回被选元素的直接父元素。m6eHTML5中文学习网 - HTML5先行者学习网
该方法只会向上一级对 DOM 树进行遍历。m6eHTML5中文学习网 - HTML5先行者学习网

<section>  <h1>文章的<span>标题</span>啦</h1>  <p>文章的内容内容内容内容内容内容</p>  <p>结尾部分</p></section>
$(document).ready(function () {  // 通过parent()函数,可获取当前元素的直接父级元素  var elem = $('span').parent();  console.log(elem);});

2.JQuery parents()m6eHTML5中文学习网 - HTML5先行者学习网

parents() 方法返回被选元素的所有父元素。m6eHTML5中文学习网 - HTML5先行者学习网

<section>  <h1>文章的<span>标题</span>啦</h1>  <p>文章的内容内容内容内容内容内容</p>  <p>结尾部分</p></section>
$(document).ready(function () {  // 通过parent()函数,可获取当前元素的所有父级元素  var elem = $('span').parents();  console.log(elem); });

3.JQuery parentsUntil()m6eHTML5中文学习网 - HTML5先行者学习网

parentsUntil() 方法返回介于两个给定元素之间的所有父级元素m6eHTML5中文学习网 - HTML5先行者学习网

<section>  <h1>文章的<span>标题</span>啦</h1>  <p>文章的内容内容内容内容内容内容</p>  <p>结尾部分</p></section>
$(document).ready(function () {  // 获取span在body标签下的所有父级元素  var elem = $('span').parentsUntil('body');  console.log(elem);});

m6eHTML5中文学习网 - HTML5先行者学习网
遍历 - 子级(后代)m6eHTML5中文学习网 - HTML5先行者学习网
向下遍历DOM树。m6eHTML5中文学习网 - HTML5先行者学习网

向下遍历可以使用如下两个函数:m6eHTML5中文学习网 - HTML5先行者学习网

1.children()m6eHTML5中文学习网 - HTML5先行者学习网
2.find()m6eHTML5中文学习网 - HTML5先行者学习网
1.JQuery children()m6eHTML5中文学习网 - HTML5先行者学习网

children() 方法返回被选元素的所有直接子元素。m6eHTML5中文学习网 - HTML5先行者学习网
该方法只会向下一级对 DOM 树进行遍历。m6eHTML5中文学习网 - HTML5先行者学习网

<section>  <h1>文章的<span>标题</span>啦</h1>  <p>文章的内容内容内容内容内容内容</p>  <p>结尾部分</p></section>
$(document).ready(function () {  // 获取section标签下的所有直接子元素  var elem = $('section').children();  console.log(elem);});

2.JQuery find()m6eHTML5中文学习网 - HTML5先行者学习网

find() 方法返回被选元素的后代元素,一路向下直到最后一个后代。m6eHTML5中文学习网 - HTML5先行者学习网
m6eHTML5中文学习网 - HTML5先行者学习网

<section>  <h1>文章的<span>标题</span>啦</h1>  <p>文章的内容内容内容内容内容内容</p>  <p>结尾部分</p></section>
$(document).ready(function () {  // 获取section标签下的所有p标签的子元素  var elem = $('section').find('p');  console.log(elem);  // 获取section标签下的所有子元素  var elems = $('section').find('*');  console.log(elems);});

遍历 - 同级(兄弟)m6eHTML5中文学习网 - HTML5先行者学习网

有以下几个方法:m6eHTML5中文学习网 - HTML5先行者学习网
1.sibings()m6eHTML5中文学习网 - HTML5先行者学习网
除自身外,遍历同级的所有元素,修改适用于同级所有元素m6eHTML5中文学习网 - HTML5先行者学习网

2.next()m6eHTML5中文学习网 - HTML5先行者学习网
除自身外,仅下一个元素修改m6eHTML5中文学习网 - HTML5先行者学习网

3.nextAll()m6eHTML5中文学习网 - HTML5先行者学习网
除自身外,修改下面的所有元素m6eHTML5中文学习网 - HTML5先行者学习网

4.nextUntil()m6eHTML5中文学习网 - HTML5先行者学习网
除自身外,对下面的元素进行区间修改m6eHTML5中文学习网 - HTML5先行者学习网

5.prev()m6eHTML5中文学习网 - HTML5先行者学习网
修改上一个元素m6eHTML5中文学习网 - HTML5先行者学习网

6.preAll()m6eHTML5中文学习网 - HTML5先行者学习网
修改位于元素之上的所有元素m6eHTML5中文学习网 - HTML5先行者学习网

7.preUntil()m6eHTML5中文学习网 - HTML5先行者学习网
对位于区间之上的元素进行区间修改m6eHTML5中文学习网 - HTML5先行者学习网

 <style>    .bd *{      margin:5px;      padding:3px;      border:3px solid black;    }  </style></head><body><div class="bd"><p></p><h1></h1><h2></h2><h3></h3><h4></h4><h5></h5><h6></h6>  </div></body>
$(document).ready(function(){  //$("h1").siblings().css({border:"3px solid red"}) //$("h4").nextAll().css({border:"4px solid grey"});  $("h2").prev().css({border:"3px solid green"});});
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助