把JavaScript和CSS内嵌在一个缩小的HTML文件,以提高性能?(Put javascrip

2019-07-30 22:49发布

一个典型的网站包含一个index.html文件和一堆的JavaScript和CSS文件。 为了提高网站上,人们可以表现:

  • 压缩JavaScript和CSS文件,减少文件大小。
  • 拼接的JavaScript文件合并为一个文件,对于css文件类似,以减少对服务器的请求的数量。 对于像jQuery常用的(和共享)库是有道理的离开他们外,允许浏览器缓存库,并在不同的Web应用程序重复使用。

我想知道,如果它是有道理的将串接的JavaScript和CSS文件内嵌在一个HTML文件,这将进一步降低请求数量。 这将提高你的网站的性能? 或者将它的工作扭转,使其无法在浏览器缓存内容?

Answer 1:

Concatinating你的CSS和JS文件合并成一个文件,将降低请求数量,使其加载速度更快。 但作为评价说,它不会太大的意义,除非你有一个单页的网站和网页的加载时间是非常关键的。 所以,你在我看来,最好从JavaScript单独的CSS。

这里有一本书,你可以了解更多有关的话题:

高性能网站



Answer 2:

这是不是由于以下原因,一个好主意:

  1. 您将无法享受高速缓存的好处

  2. 您将在您的所有网页的加载不需要的资源

  3. 你将有一个艰难的时间,同时开发,因为与无关的代码分支,大的文件你的网站

  4. 如果你在一个团队工作,你将与你的队友在同一个文件总是工作,这意味着你将有很多的合并冲突。



Answer 3:

这个工具可能帮助你。 打开你的网页,一切一个HTML文件内联 - 完美的要减少这些http请求移动设备上的应用程序缓存清单。

https://github.com/remy/inliner



Answer 4:

这将减少对请求的数目,但它也意味着没有为那些在其他网页上使用的缓存。 想定义一个外部文件也是一个办法告诉浏览器“和网站的这一部分是可重复使用”的。 你会采取这种能力的路程,所以CSS和JS将加载。 就像jackwanders说这是伟大的,如果你只有一个页面。



Answer 5:

您可以为您的所有页面的单个CSS和,因为它会被缓存,后续页面将把它从缓存中不发送额外的请求。

然而,将所有Javascript文件是为一个为背景。 最可能的是,你可能会使用像jQuery,以及相关的插件库。 这种“可能”扔插件之间的冲突的问题。 所以,你试试吧一下子之前,尝试一次合并几个文件,并检查是否错误弹出与否。



文章来源: Put javascript and css inline in a single minified html file to improve performance?