是否有 JS/jQuery 完全递归子节点计数功能?
各位,
假设我有以下情况:
<div class="outer">
<div>
<span>
<ul>
<div> </div>
<div> </div>
</ul>
</span>
</div>
</div>
我如何找到 div.outer 内的元素总数?像 $('div.outer').children().size() 或 length 返回 1 (我正在寻找,在本例中为 5)之类的东西是否有一个快捷方式或函数可以使用 js/ 查找总元素数jQuery 还是我应该专门针对这个问题编写一个函数? TIA。
Folks,
Let's say that I have the following situation:
<div class="outer">
<div>
<span>
<ul>
<div> </div>
<div> </div>
</ul>
</span>
</div>
</div>
How would I find the total number of elements inside div.outer? Something like $('div.outer').children().size() or length returns 1 (I'm looking, in this case, for 5) is there a shortcut or function to find the total element count using js/jQuery or should I write a function just for this issue? TIA.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
vartotalDesendants = $('div.outer *').length;
就完成了。
var totalDescendants = $('div.outer').find('*').length;
也可以。
var totalDescendants = $('div.outer *').length;
and done.
var totalDescendants = $('div.outer').find('*').length;
would also work.
一个简单(并且可能比 jQuery 更快)的 JavaScript 替代方案是:
这确实假设您已经给了元素一个 id。如果这很重要,您可以使用 jQuery 获取具有类
outer
的所有元素:A simple (and likely faster than jQuery) JavaScript alternative would be
This does assume you've given the element an id. You could use jQuery to get all the elements with class
outer
, if this is important:jQuery 递归子节点计数函数:
jQuery(document).ready(function(){
var TotalChildren=jQuery("*","div.outer").length;
});
jQuery recursive child node count function:
jQuery(document).ready(function(){
var totalChildren=jQuery("*","div.outer").length;
});