5.遍历

所有遍历在 DOM 树中沿着同胞元素向后遍历

1. 获取父级及以上(祖先)

parent() 方法返回被选元素的直接父元素
parents() 方法返回被选元素的所有祖先元素,它一路向上直到文档的根元素
parentsUntil() 方法返回介于两个给定元素之间的所有祖先元素
  1. $("span").parentsUntil("div");
  1. <body>
  2. <div class="child"></div>
  3. <script>
  4. var parent=$(".child").parent();
  5. console.log(parent); //这里获得的是jquery对象 在parent加上[0]就是js的对象 就是(parent[0])
  6. </script>
  7. </body>

image.png

2. 获取子级及以下(后代)

children() 方法返回被选元素的所有直接子元素
find() 方法返回被选元素的后代元素,一路向下直到最后一个后代

3. 获取同级元素(同胞)

siblings() 方法返回被选元素的所有同胞元素。
next() 方法返回被选元素的下一个同胞元素
nextAll() 方法返回被选元素后面的所有同胞元素
nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素
prev() 方法返回被选元素的上一个同胞元素
prevAll() 方法返回被选元素前面的所有同胞元素
prevUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素
  1. $("h2").siblings();//返回被选元素的所有同胞元素
  2. $("h2").siblings("p");//返回属于 <h2> 的同胞元素的所有 <p> 元素
  3. $("h2").nextUntil("h6");//返回介于 <h2> 与 <h6> 元素之间的所有同胞元素
  4. $("h6").prevUntil("h2");

4. 选择特定元素( 过滤 )

first() 方法返回被选元素的首个元素
last() 方法返回被选元素的最后一个元素
eq() 方法返回被选元素中带有指定索引号的元素
filter() 方法允许您规定一个标准。匹配的元素会被返回
not() 方法返回不匹配标准的所有元素
  1. $("div p").first();//首个 <div> 元素内部的第一个 <p> 元素
  2. $("div p").last();//选择最后一个 <div> 元素中的最后一个 <p> 元素
  3. $("p").eq(1);//选取第二个 <p> 元素(索引号 1)
  4. $("p").filter(".intro");//返回带有类名 "intro" 的所有 <p> 元素
  5. $("p").not(".intro");//返回不带有类名 "intro" 的所有 <p> 元素

ex:

index() 获取对应的下标值
1-

  1. <style>
  2. .color{
  3. color: aquamarine;
  4. }
  5. </style>
  6. </head>
  7. <body>
  8. <ul>
  9. <li>1</li>
  10. <li>2</li>
  11. <li>3</li>
  12. <li>4</li>
  13. </ul>
  14. <script>
  15. $("li").click(function(){
  16. console.log($(this).index()) //获取对应的下标值
  17. $(this).addClass("color").siblings().removeClass("color")
  18. })
  19. </script>
  20. </body>

2-tab切换
eq(); 传参

  1. <style>
  2. .show div{
  3. width: 100px;
  4. height: 100px;
  5. background-color: aquamarine;
  6. }
  7. .show div:nth-child(2){
  8. display: none;
  9. }
  10. .color{
  11. color: #f70000;
  12. }
  13. </style>
  14. </head>
  15. <body>
  16. <ul>
  17. <li>登录</li>
  18. <li>注册</li>
  19. </ul>
  20. <div class="show">
  21. <div>登录</div>
  22. <div> 注册</div>
  23. </div>
  24. <script>
  25. $("li").click(function(){
  26. $(this).addClass("color").siblings().removeClass("color")
  27. var index=$(this).index()
  28. console.log(index);
  29. $(".show div").eq(index).show().siblings().hide()
  30. })
  31. </script>
  32. </body