问答详情
源自:1-1 为什么学习JavaScript

关于Js的插入形式

<script type="text/javascript">
    document.write("hello");
    document.getElementById("p1").style.color="blue";
  </script>

这一段代码在body中能够使p1字段变成蓝色,为什么在head中就不行

提问者:慕粉2145401144 2017-07-14 18:14

个回答

  • 慕粉1315149092
    2017-07-14 19:40:31
    已采纳

    JS代码按从上到下顺序解析,当你把JS代码放在head中的时候,网页先解析你的JS代码,这时并没有id为"p1"的p元素存在,因此这段代码没有对网页产生任何影响;而当你放在body中时,我想也同样把JS代码放在了p元素后面吧?这样的话,p元素先被解析出来,之后JS就会对其的色彩样式产生影响。你可以试试把JS代码放在body中,p元素之前,同样也应该是没有效果的

  • 慕设计9341963
    2017-07-14 19:54:12

    试试把js放到p1元素样式后面看看,代码运行是先运行head再运行body的

  • 慕粉2145401144
    2017-07-14 19:15:21

    emmmm,那js和css的样式设置有什么不一样呢?css的样式设置就算在head里面也都是可以执行的呀

  • 慕粉7549818
    2017-07-14 19:12:31

    因为是顺序执行,P1段在head之后,所以此局是个无效语句,直接跳过