You*_*uss 4 each jquery tagname
我正在尝试获取有关所有元素标签的信息以及页面中的频率,这就是我找到标签的方式,非常简单:
$('body *').each(function(){
var string = this.tagName;
Run Code Online (Sandbox Code Playgroud)
但是长度没有赶上:
var count = $(this).length;
Run Code Online (Sandbox Code Playgroud)
它给了我,1虽然有两个div,例如:JsFiddle
我可以通过删除each函数解决这个问题,但我需要它作为标记名.我必须使用body*作为我的项目,所以我不能直接引用div.
您不是使用 迭代每种类型的标签body *,而是单独迭代每个标签。长度始终为 1,因为this始终是单个 DOM 元素。
您应该枚举要计数的标签,并迭代它们:
var tags = ['div', 'li', 'a'];
tags.forEach(function (tag) {
console.log(tag, "appears", $('body ' + tag).length, 'times');
});
Run Code Online (Sandbox Code Playgroud)
在该页面的 JS 控制台中运行的输出:
div appears 141 times
li appears 66 times
a appears 179 times
Run Code Online (Sandbox Code Playgroud)