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

JS的插入

JavaScript代码需要写在<script></script>之间。有的JS代码写head标签内,也有写在body标签内的,请问它们有什么区别吗

提问者:保护我方鲁班七号 2017-08-08 18:14

个回答

  • 慕婉清9068767
    2017-08-08 19:05:02
    已采纳

    js应该放在body的底部,因为浏览器需要一个稳定的dom树结构,而且js中很有可能有代码直接改变了dom树结构,浏览器为了防止出现js修改dom树,需要重新构建dom树的情况,所以就会阻塞其他的下载和呈现。

    将javaScript放在head内和body地步的区别也在于此,放在head里面,由于浏览器发现head里面有JavaScript标签就会暂时停止其他渲染行为,等待JavaScript下载并执行完成才能接着往下渲染,而这个时候由于在head里面这个时候页面是白的;如果将JavaScript放在页面底部,render Tree已经完成大部分,所以此时页面有内容呈现,即使遇到JavaScript阻塞渲染,也不会有白屏出现。

  • Kalimye
    2017-08-08 19:38:49

    渲染的顺序不同,如果想让JS尽早执行,最好放在head里面,会影响加载速度,影响后面代码的执行;放在body里面,不会对加载速度,渲染等产生太大影响

  • qq_梦中草原_0
    2017-08-08 19:08:15

    区别不是很大,只是执行顺序的不同

  • 希尔瓦娜斯踩踩
    2017-08-08 19:03:12

    执行的顺序不同,一个是读完html再执行,一个是直接引用