Javascript 如何避免计算html页面[JQUERY]中的所有div元素
我只需要数几个分区,不是全部。假设您有以下html标记:Javascript 如何避免计算html页面[JQUERY]中的所有div元素,javascript,jquery,html,Javascript,Jquery,Html,我只需要数几个分区,不是全部。假设您有以下html标记: <div id="box"> <div> <div> </div> </div> <div> <div> </div> </div> </div> 有人能帮我吗?通过这种方式,您可以计算子元素: <div id="box"> <div>
<div id="box">
<div>
<div>
</div>
</div>
<div>
<div>
</div>
</div>
</div>
有人能帮我吗?通过这种方式,您可以计算子元素:
<div id="box">
<div>
<div>
</div>
</div>
<div>
<div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-2.2.1.min.js" integrity="sha256-gvQgAFzTH6trSrAWoH1iPo9Xc96QxSZ3feW6kem+O00=" crossorigin="anonymous"></script>
<script>
var count=$('#box').find('div').length;
alert(count) // the result is 4 because counts all divs
var count=$('#box > div').length;
alert(count) // the result is 2 because counts all divs within the first one
</script>
变量计数=$(“#框”).find('div').length;
alert(count)//结果为4,因为对所有div进行计数
变量计数=$('#box>div')。长度;
alert(count)//结果为2,因为统计第一个div中的所有div
运行脚本:
如果将其作为html文件运行,您将看到警报(4)和警报(2)都起作用。.find()
将遍历整个节点,而.children()
将只检查直接子代:
var count = $('#box').children('div').length;
相反,您可以在选择器中使用
,也可以直接指定直接子项。大概是这样的:
var count = $('#box > div').length;
我认为第二个例子只是碰巧在这种情况下起作用。它实际上是在选择大的子元素,而不是子元素。恰好有相同的计数。注意:抓得好。我读得不太好,认为这是他想要的。更新了答案。
var count = $('#box > div').length;