悠扬36001
2016-03-15 18:58
请问这段代码为什么放在里面就有效果,放在里面就没一点反应?
<script type="text/javascript"> var mychar=document.getElementById("con"); mychar.style.color="red"; </script>
HTML代码从上往下解析,你放在head里面,就先解析var mychar=document.getElementById("con"),但这时并没有id=con对应的元素,因为id=con的元素在var mychar=document.getElementById("con")这句话的后面,所以就没效果,这是要用window.onload,它表示当所有元素都加载完之后执行, 放在head里面没有问题。
window.onload=function(){
var mychar=document.getElementById("con");
mychar.style.color="red";
}
HTML读取的时候是从上往下解析,如果把你那段代码放在head里面的话,解析的时候无法获取id=con对应的元素,在控制台里他的效果是null,所以就没效果
放在body有用,放在head里面就没效果
JavaScript入门篇
739818 学习 · 9566 问题
相似问题