Js代码的位置问题

来源:3-4 改变 HTML 样式

悠扬36001

2016-03-15 18:58

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

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

3回答

  • qq_冲哥_0
    2016-03-20 18:30:09
    已采纳

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

    }

    悠扬3600...

    非常感谢!

    2016-04-17 15:55:14

    共 1 条回复 >

  • 慕数据7935617
    2016-03-18 09:51:15

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

  • 悠扬36001
    2016-03-15 18:59:28

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

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739818 学习 · 9566 问题

查看课程

相似问题