我已经找到了我一直遇到的Javascript问题,这个问题可以在这段代码中看到,在页面加载后运行:
var btns = document.getElementsByTagName('button');
console.log(btns);
divs = document.getElementsByTagName("div");
console.log(btns.length);
console.log(btns);
当此代码有效时(并且不显示空白数组[]),它会在控制台中显示按钮数组,然后是0,然后是按钮数组。怎么能为长度返回错误的值?
答案 0 :(得分:0)
我测试了这段代码:
<button>bt1</button><div>www</div>
<button>bt_2</button>
<script type="text/javascript">
var btns = document.getElementsByTagName('button');
console.log(btns);
divs = document.getElementsByTagName("div");
console.log(btns.length);
console.log(btns)
</script>
它显示正确:
[button, button]
2
[button, button]
答案 1 :(得分:0)
看起来像将它设置为DOMContentLoaded事件一样。
document.addEventListener("DOMContentLoaded", function () {...}, false)
似乎是设置onload代码的正确事件。