美文网首页
该把外部JS文件放在HTML的哪个位置

该把外部JS文件放在HTML的哪个位置

作者: 小m_up | 来源:发表于2017-08-06 18:14 被阅读154次

一般来说,我们都会将外部js文件放在我们html<head>...</head>中:

<html>
    <head>
        <script type="text/javascript" src="index.js"></script>
    </head>
    <body>
    ...
    </body>
</html>

那么这样到底好不好呢?

在浏览器渲染页面之前,它需要通过解析HTML标记然后构建DOM树。在这个过程中,如果解析器遇到了一个脚本(script),它就会停下来,并且执行这个脚本,然后才会继续解析HTML。如果遇到了一个引用外部资源的脚本(script),它就必须停下来等待这个脚本资源的下载,而这个行为会导致一个或者多个的网络往返,并且会延迟页面的首次渲染时间。

那么既然把脚本(script)资源放在head里面是个不好的主意,并且可能会阻塞浏览器渲染页面;那我们是不是要把所有的JavaScript文件都放置到文档的底部呢?

那也不一定哦。。。

如果你的脚本中使用了document.write在页面中插入内容的话,那么我的内容必须在页面加载的时候就显示出来,那此时我的js就必须在<head>里面了。

到底怎么放呢

  • 对于必须要在DOM加载之前运行的JavaScript脚本,我们需要把这些脚本放置在页面的head中,而不是通过外部引用的方式,因为外部的引用增加了网络的请求次数;并且我们要确保内敛的这些JavaScript脚本是很小的,最好是压缩过的,并且执行的速度很快,不会造成浏览器渲染的阻塞;

  • 对于支持使用script标签的asyncdefer属性的浏览器,我们可以使用这两个属性;asyncdefer都代表异步执行,他们的下载过程都可以在HTML的解析过程中进行,async加载完成之后立即执行这个文件的代码,执行文件代码的过程中会阻塞HTML的解析,defer是在HTML文档解析之后再执行加载完成的文件

  • 那么除了必须在页面加载前执行的js文件,且不支持asyncdefer的浏览器,那么我们就可以将他们放在html底部。

相关文章

  • 该把外部JS文件放在HTML的哪个位置

    一般来说,我们都会将外部js文件放在我们html的 ... 中: 那么这样到底好不好呢? 在浏览器渲染页面之前,它...

  • JavaScript入门篇

    引用JS外部文件 JS在页面中的位置 javascript作为一种脚本语言可以放在html页面中任何位置,但是浏览...

  • js笔记.md

    用法 JS内部引用 引用JS外部文件 注意: javascript作为一种脚本语言可以放在html页面中任何位置,...

  • 2019-03-15 django ajax 403 csrf

    把这个js文件放在html里:

  • 1. JavaScript入门

    JS在页面中的位置我们可以将JavaScript代码放在HTML文件中任何位置,但是我们一般放在网页的 或者 ...

  • JavaScript1.0

    如何插入JS ​​ 引用JS外部文件 ​​ 找到你的位置(JS在页面中的位置) ​​ ​​ JavaScript-...

  • JavaScript入门(一)

    js入门 js位置: javascript可以放在html中任何位置,但一般放在head或body部分 放在hea...

  • JS脚本应该放在HTML的那个位置?

    js了解一下: 一直以来都是将js文件写在 之前,外部引入的js脚本文件也同样放在这个位置。却只知道一个模糊的...

  • 第一章 JavaScript入门

    1.1在index.html中调用外部JavaScript文件function.js,运行index.html文件...

  • JavaScript入门篇

    1.为什么学习javaScript.html 2.如何插入js.html 3.引入JS外部文件.html 4.JS...

网友评论

      本文标题:该把外部JS文件放在HTML的哪个位置

      本文链接:https://www.haomeiwen.com/subject/vuhnlxtx.html