我身体里有两(2)个div元素。
<body><div></div><div></div></body>
var haha = document.getElementsByTagName('div');
for (var k=0; k<haha.length; k++) alert(haha[k].tagName);
这会返回4次出现,我猜它是关闭标签,我怎么能省略它们?
答案 0 :(得分:2)
由于使用了
,我遇到了这个问题var elements = document.getElementsByTagName('div')
for(var i in elements) {
console.log(i) //This will print 2 x number of elements
}
而不是使用
var elements = document.getElementsByTagName('div');
for(var i = 0; i < elements.length; i++) {
//Only once
}
答案 1 :(得分:1)
禁用firebug并重试;)
Firebug和其他一些附加组件操纵html代码。我尝试了你的样本并获得了3个警告,这使得完美感觉:
> document.getElementsByTagName('div')
[div, div, div#_firebugConsole]
答案 2 :(得分:0)
我想你没有正确关闭你的div。也许你错过了</div>
正斜杠
或者你正在执行两次你的javascript
答案 3 :(得分:0)
可能你缺少密切标签。
<div><div> <div><div>
应该是
<div></div> <div></div>
欢呼声