以下是相关的HTML:
<div id="navcontainer">
<ul id="navlist">
<li><a href="#tab1">Item one</a></li>
<li><a href="#tab2">Item two</a></li>
<li><a href="#tab3">Item three</a></li>
<li><a href="#tab4">Item four</a></li>
<li><a href="#tab5">Item five</a></li>
</ul>
</div>
vertical.js
的内容function tabber() {
var li = document.getElementById("navcontainer");
var as = document.getElementById('navlist');
return;
}
window.onload = tabber();
执行tabber()函数时,对 document.getElementById 的函数调用返回null。为什么?元素 navcontainer 肯定存在。有线索吗?
答案 0 :(得分:12)
onload
事件时,您犯了一个错误。
window.onload = tabber();
会将tabber()
的结果分配给onload
属性。 Tabber()立即执行,而不是onload 。
将其更改为
window.onload = function() { tabber(); }
这将有效。
答案 1 :(得分:7)
你在窗口加载时错误地调用tabber函数。
将其更改为
window.onload = tabber;
答案 2 :(得分:0)
也许您将JS关键字'as'用作变量这一事实就是问题所在。首先删除它。