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

jQuery遍历之find()方法

jQuery是一个合集对象,如果想快速查找DOM树中的这些元素的后代元素,此时可以用find()方法,这也是开发使用频率很高的方法。这里要注意 children与find方法的区别,children是父子关系查找,find是后代关系(包含父子关系)

理解节点查找关系:

<div class="div">
    <ul class="son">
        <li class="grandson">1</li>
    </ul>
</div>

代码如果是$("div").find("li"),此时,li与div是祖辈关系,通过find方法就可以快速的查找到了。

.find()方法要注意的知识点:

注意重点:

.find()和.children()方法是相似的
1.children只查找第一级的子节点
2.find查找范围包括子节点的所有后代节点

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

任务

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

在class="left"的元素中
找到后代元素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: 200px;
  12. }
  13.  
  14. .left div {
  15. width: 150px;
  16. height: 70px;
  17. padding: 5px;
  18. margin: 5px;
  19. float: left;
  20. background: #bbffaa;
  21. border: 1px solid #ccc;
  22. }
  23.  
  24. span {
  25. color: blue;
  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>find方法()</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 test">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>点击:find传递表达式</button>
  57. <br/>
  58. <br/>
  59. <h3>find表达式</h3>
  60. <div style="border:1px solid red;">
  61. <p>
  62. <span>测试1</span>
  63. <a>测试2</a>
  64. </p>
  65. <p>
  66. <span>慕课网1</span>
  67. <a>慕课网2</a>
  68. </p>
  69. <div>
  70. <span>Aaron1</span>
  71. <a>Aaron2</a>
  72. </div>
  73. </div>
  74. <br/>
  75. <br/>
  76. <button>点击:find传递$对象</button>
  77. <script type="text/javascript">
  78. $("button:first").click(function() {
  79. //?
  80. })
  81. </script>
  82. <script type="text/javascript">
  83. $("button:last").click(function() {
  84. //找到所有p元素,然后筛选出子元素是span标签的节点
  85. //改变其字体颜色
  86. var $spans = $('span');
  87. $("p").find($spans).css('color', 'red');
  88. })
  89. </script>
  90. </body>
  91.  
  92. </html>
  93.  
下一节