插件窝 干货文章 Jquery实现获取子元素的方法children()和find()分析

Jquery实现获取子元素的方法children()和find()分析

jQuery jq 获取子元素 855    来源:插件窝    2020-12-09

Jquery获取子元素的方法有2种,分别是children()方法和find()方法。下面我们分别来使用这两种方法,看看它们有何差异。


1.children()方法:获取该元素下的直接子集元素


2.find()方法:获取该元素下的所有子集元素


分别以以下HTML代码为例:


<ul>
  <li>
    list1
    <ul>
      <li>
        list1-1
      </li>
      <li>
        list1-2
      </li>
    </ul>
  </li>
  <li>
    list2
    <ul>
      <li>
        list2-1
      </li>
      <li>
        list2-2
      </li>
    </ul>
  </li>
  <li>
    list3
    <ul>
      <li>
        list3-1
      </li>
      <li>
        list3-2
      </li>
    </ul>
  </li>
</ul>

3、children()方法获取ul下面直接子集元素li:$("ul").children("li")


需要注意的是,如果li元素下还有li元素,children方法将不会被获取。我们可以用length来测试获取的个数“$("ul").children("li").length”,最后输出结果为3


4、find()方法获取ul下所有元素li:$("ul").find("li")


需要注意的是,find方法会无限循环查找ul标签节点下的li,一直找到没有为止,用length来测试获取个数“$("ul").find("li").length”,最后输出结果为9


5、children和find的区别:children只会查找直接子集,而find会跨越层级查找,一直找到没有为止。