问答详情
源自:1-2 新朋友你在哪里(如何插入JS)

js究竟怎么放

为什么上一节中

 <script type="text/javascript">

    document.write("hello");

document.getElementById("p1").style.color="blue";

  </script>

这段代码放在<head>中与放在<body>中效果不一样,不是说都可以的吗?那究竟是怎么回事?

提问者:慕田峪9313313 2016-03-06 14:37

个回答

  • Lkeep
    2016-03-06 14:44:32
    已采纳

     javascript作为一种脚本语言可以放在html页面中任何位置,但是浏览器解释html时是按先后顺序的,所以前面的script就先被执行。比如进行页面显示初始化的js必须放在head里面,因为初始化都要求提前进行(如给页面body设置css等);而如果是通过事件调用执行的function那么对位置没什么要求的。

  • haoya
    2016-06-16 15:02:16

    这里这样子理解吧,浏览器解析html是从上到下的,如果把javascript放在head里的话,则先被解析,但这时候body还没有解析,所以会返回空值。很明显,我们这里是使用的document.getElementById("p1").style.color="blue";中的“p1”还没有被解析的时候,head里面的js就已经解析完了,所以不会有作用,最好是使用function来处理,这样子更加方便。

  • weibo_直走还是转角_0
    2016-03-09 16:06:43

    为了和代码分开 最好放在head'中 java代码在body