6-8 jQuery遍历之siblings()
本节编程练习不计算学习进度,请电脑登录imooc.com操作

jQuery遍历之siblings()

jQuery是一个合集对象,如果想快速查找指定元素集合中每一个元素的同辈元素,此时可以用siblings()方法

理解节点查找关系:

如下蓝色的class="item-2"的li元素,红色的节点就是它的siblings兄弟节点

<ul class="level-3">
    <li class="item-1">1</li>
    <li class="item-2">2</li>
    <li class="item-3">3</li>
</ul>

siblings()无参数

取得一个包含匹配的元素集合中每一个元素的同辈元素的元素集合

注意:jQuery是一个合集对象,所以通过siblings是匹配合集中每一个元素的同辈元素

siblings()方法选择性地接受同一类型选择器表达式

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

具体的操作,请参考右边的代码

任务

请在右边代码区域的第60行填入任务代码

找到class=item-2的所有兄弟节点
然后给每个li加上红色的边
  1. <!DOCTYPE html>
  2. <html>
  3.  
  4. <head>
  5. <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  6. <title></title>
  7. <link rel="stylesheet" href="imooc.css" type="text/css">
  8. <style>
  9. .left {
  10. width: auto;
  11. height: 150px;
  12. }
  13.  
  14. .left div {
  15. width: 150px;
  16. height: 100px;
  17. padding: 5px;
  18. margin: 5px;
  19. float: left;
  20. background: #bbffaa;
  21. border: 1px solid #ccc;
  22. }
  23.  
  24. a {
  25. display: block;
  26. }
  27. </style>
  28. <script src="https://www.imooc.com/static/lib/jquery/1.9.1/jquery.js"></script>
  29. </head>
  30.  
  31. <body>
  32. <h2>siblings方法()</h2>
  33. <div class="left first-div">
  34. <div class="div">
  35. <ul class="level-1">
  36. <li class="item-1">1</li>
  37. <li class="item-2">2</li>
  38. <li class="item-3">3</li>
  39. </ul>
  40. </div>
  41. <div class="div">
  42. <ul class="level-2">
  43. <li class="item-1">1</li>
  44. <li class="item-2">2</li>
  45. <li class="item-3">3</li>
  46. </ul>
  47. </div>
  48. <div class="div">
  49. <ul class="level-3">
  50. <li class="item-1">1</li>
  51. <li class="item-2">2</li>
  52. <li class="item-3">3</li>
  53. </ul>
  54. </div>
  55. </div>
  56. <button>点击:siblingsv无参数</button>
  57. <button>点击:siblings传递选择器</button>
  58. <script type="text/javascript">
  59. $("button:first").click(function() {
  60. //?
  61. })
  62. </script>
  63.  
  64. <script type="text/javascript">
  65. $("button:last").click(function() {
  66. //找到class=item-2的所有兄弟节点
  67. //然后筛选出最后一个,加上蓝色的边
  68. $('.item-2').siblings(':last').css('border', '2px solid blue')
  69. })
  70. </script>
  71.  
  72. </body>
  73.  
  74. </html>
  75.  
下一节