document.getElementById 返回 null
2010-06-27
1714
相关 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 肯定存在。有什么线索吗?
3个回答
嘿,魔鬼藏在细节中。您在分配
onload
事件时犯了一个错误。
window.onload = tabber();
将把
tabber()
的结果
分配给
onload
属性。
Tabber() 会立即执行,而不是 onload
。
将其更改为
window.onload = function() { tabber(); }
这样就可以了。
Pekka
2010-06-27
您在窗口加载时错误地调用了 tabber 函数。
将其更改为
window.onload = tabber;
Damien Dennehy
2010-06-27
也许您使用 JS 关键字“as”作为变量是一个问题。请先将其删除。
Forrest Voight
2010-06-27