为了账号安全,请及时绑定邮箱和手机立即绑定

Js代码的位置问题

请问这段代码为什么放在里面就有效果,放在里面就没一点反应?

<script type="text/javascript">
var mychar=document.getElementById("con");
mychar.style.color="red";
</script>

正在回答

3 回答

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";

}

2 回复 有任何疑惑可以回复我~
#1

悠扬36001 提问者

非常感谢!
2016-04-17 回复 有任何疑惑可以回复我~

HTML读取的时候是从上往下解析,如果把你那段代码放在head里面的话,解析的时候无法获取id=con对应的元素,在控制台里他的效果是null,所以就没效果

1 回复 有任何疑惑可以回复我~

放在body有用,放在head里面就没效果

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Js代码的位置问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信