天天看点

jQuery遍历节点方法汇总

1.children()方法:$(\'div\').children()---遍历查找div元素的所有子元素节点

1 <p>Hello</p>
 2 <div>
 3     <span>Hello Again</span>
 4     <p class="box">您好!</p>
 5 </div>
 6 <p>And Again</p>
 7 
 8 <script type="text/javascript">
 9     $(\'div\').children();      //<span>Hello Again</span><p class="box">您好!</p>
10     $(\'div\').children(\'.box\')    //<p class="box">您好!</p>
11 </script>      

2.next()方法:$(\'div\').next() --- 查找div元素后相邻的同级元素但非所有同级元素

  [相关方法]

  (1)nextAll()方法:$(\'div\').nextAll() ---- 查找div之后的所有同级元素

  (2)nextUntil()方法:$(\'div\').nextUntil(\'p\')----查找div之后直到p元素的所有同级元素

1 <p>Hello</p>
 2 <p class="box">Hello Again</p>
 3 <div>
 4     <span>And Again</span>
 5 </div>
 6 
 7 <script type="text/javascript">
 8     $(\'p\').next();      //<p>Hello Again</p><div><span>And Again</span></div>
 9     $(\'p\').next(\'.box\');   //<p class="box">Hello Again</p>
10 </script>      

3.prev()方法:$(\'div\').prev() ---- 查找div之前相邻的同级元素

  [相关方法有]

  (1)prevAll()方法:$(\'div\').prevAll() ---- 查找div之前的所有同级元素

  (2)prevUntil()方法:$(\'div\').prevUntil(\'p\') --- 查找div之前直到p元素的所有元素

1 <p>Hello</p>
2 <div>
3     <span>Hello Again</span>
4 </div>
5 <p>And Again</p>
6 
7 <script type="text/javascript">
8    $(\'p\').prev();   //<div><span>Hello Again</span></div>
9 </script>      

4.siblings()方法:$(\'div\').siblings()---- 查找div前后所有的同级元素

5.find()方法:$(\'div\').find(\'span\') ---- 查找div元素内子元素并且是span元素

6.eq()方法:$(\'div\').eq(1) --- 查找第二个div元素(索引下标从0开始)

7.first()方法:$(\'li\').first() --- 获取第一个li元素

8.last()方法:$(\'li\').last() --- 获取最后一个li元素

9.filter()方法:$(\'div\').filter(\'.box\') --- 获取类名为box的div元素

10.is()方法:$(\'.box\').is(\'div\')  ---- 判断.box是否是div元素

11.map()方法:$(\'div\').map(callback) --- 将每个div执行callback函数

  例:遍历input元素获取其value值以“,”分隔添加到p元素内后面

<p><b>Values: </b></p>
<form>
  <input type="text" name="name" value="John"/>
  <input type="text" name="password" value="password"/>
  <input type="text" name="url" value="http://ejohn.org/"/>
</form>

<script type="text/javascript">
    $("p").append( $("input").map(function(){
          return $(this).val();
        }).get().join(", ") );   //<p>John, password, http://ejohn.org/</p> 
</script>      

12.hasClass()方法:$(\'div\').hasClass(‘box’) ---- 查找含有类名为box的div

13.has()方法:$(\'div\').has(\'span\') ---- 查找含包有span元素的div元素

14.not()方法:$(\'div\').not(\'span\') ---- 查找不包含有span元素的div元素

15.slice()方法:$(\'p\').slice(0,2) ---- 查找第1个p元素到第3个p元素

16.offsetParent()方法:$(\'p\').offsetParent() --- 查找p元素的第一个被定位的祖先元素

17.parent()方法:$(\'p\').parent() ---- 返回包含p元素的唯一父节点的元素集合

18.parents()方法:$(\'p\').parent() ---- 返回包含p元素的所有祖先节点(不包括根节点)

19.parentUntil()方法:$(\'p\').parentUntil(\'#box\') ---- 查找p元素的祖先级元素直到#box为止

20.contents()方法:$(\'div\').contents() --- 返回div元素内的所有子节点(包括文本节点)

21.end()方法:$(\'div\').find(\'span\').end() ---- 将语句的主体变回前一次状态即:查找到span元素之后焦点返回到div元素

<div>
    <span>Hello</span>,
    how are you?
</div>

<script type="text/javascript">
    $(\'div\').find(\'span\').addClass(\'test\').end().attr(\'title\',\'title1\');
    //span添加class=test;div添加title=title1
</script>