问答详情
源自:3-4 改变 HTML 样式

关于script位置问题

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>style样式</title>

<script type="text/javascript">

    var mychar= document.getElementById("con");

    mychar.style.color="red";

    mychar.style.fontSize="30px";

    mychar.style.backgroundColor="#ccc";

  </script> 

</head>

<body>

  <h2 id="con">I love JavaScript</H2>

  <p> JavaScript使网页显示动态效果并实现与用户交互功能。</p>

 

</body>

</html>

script放在head里面没有效果

但是使用window.onload=function(){}之后就有效果了

但是把window.onload=function(){}拆分后又没效果了

例:function aaa(){} ;

      window.onload=aaa();

这样却没效果 

提问者:qq_谜离_03319966 2016-10-11 14:32

个回答

  • 慕粉4161845
    2016-10-11 16:24:29
    已采纳

    对滴,如果你还想放在head里面的话,就先写function(){        //这个表示页面加载完成后开始执行js

    //这里开始写js

    }

  • harder_Leaner
    2016-10-11 16:24:58

    <script>是按从上到下加载,页面加载完成之后函数是触发后才执行,window.onload=function()是加载完之后直接触发这个函数。

  • 不是我的昵称
    2016-10-11 16:19:43

    楼上说得对

  • 邹鑫惘
    2016-10-11 16:05:10

    页面是执行是有顺序的,先执行head里面的,你把document.getElementById("con")放head里面,获取的值是null,当然不会有样式改变。

    而把js 放入function里面的话,就涉及先后顺序,你只要触发就执行了。

    大概就这些了,不知道我说清楚了没。