<input type="button" value="显示日期" id="myBtn" />
<script>
//window.onload=function() {
document.getElementById("myBtn").onclick=function(){displayDate()};
function displayDate(){
document.getElementById("demo").innerHTML=Date();
}
}
</script>
为什么这段JS代码必须放在myBtn后面才能起作用呢,放在前面和HEAD中都不管用,为什么加了1个Windows.onload就可以放在前面了~
1.如果没有添加
window.onload
的话,那么如果你把这段js代码放在myBtn
前面,浏览器首先会加载这段js代码,然后就会运行这段代码,但是此时myBtn
还未被浏览器加载渲染,所以就找不到这个元素。2.如果你添加了
window.onload
,那么表示浏览器加载完所有的DOM之后才会运行这段js代码,所以,在这段代码运行之前,就可以找到myBtn
这个元素,所以可以正常运行了。