getElementById取不到对象
在浏览器进行文档解析时是有顺序的,当页面加载完毕之前,或者说在相应的DOM对象加载完毕之前,对应的对象是不能获取到的。
看下面代码:
script var temp = document.getElementById(div); alert(temp); /script body div id=div input name=username id=username type=text button id=btn按钮/button /div /body
在这段代码中,document.getElementById(div)是获取不到对象的,且alert(temp)将会弹出null;
这是因为当浏览器解析到script标签中的代码时,body中的DOM元素还没有加载完毕,自然取不到任何东西。
解决方法:将script中的代码移到body元素之后,
body div id=div input name=username id=username type=text button id=btn按钮/button /div script var temp = document.getElementById(div); alert(temp); /script /body
或者加上window.onload
script
window.onload = function(){
var temp = document.getElementById(div);
alert(temp);
}
/script