Javascript和样式优化

时间:2013-02-01 16:53:37

标签: javascript optimization

我现在正在处理一个Web应用程序,而且速度非常慢。在浏览Chrome中的网络监视器后,我看到它加载了数十种样式和脚本(可能超过150种)。这很荒谬,所以我编写了一个PHP类来缩小我的脚本和样式并缓存它们。它现在正在工作,速度要好得多!

我只是想知道,为缩小的JS提供服务的最佳方式是什么?打印<script>标签之间的所有JS(以及<style>标签之间的css)是否更好?或者我应该将所有内容放在一个文件中,比如js_loader.php,我将打印它并将标头设置为是javascript吗?

最终用户的最快速度是什么?

谢谢!

2 个答案:

答案 0 :(得分:1)

如果您可以将它们缩小并合并为单个文件,请执行此操作。 更多的脚本/链接标记意味着更多的HTTP请求,从而加载更慢。特别是当它是关于JS。

阅读Web Performance Best Practices and Rules @ http://developer.yahoo.com/yslow/

中的主题

特别是主题#1 Minimize HTTP Requests#5 Gzip Components#11 Minify JavaScript and CSS。 至于加载时间更精彩,请阅读#6 Put StyleSheets at the Top#7 Put Scripts at the Bottom

来自#7:

  

脚本引起的问题是它们会阻止并行下载。 HTTP / 1.1规范建议浏览器每个主机名并行下载不超过两个组件。如果您从多个主机名提供图像,则可以并行执行两次以上的下载。 然而,在下载脚本时,即使在不同的主机名上,浏览器也不会启动任何其他下载。

答案 1 :(得分:0)

目前最好的一些实践是

  • <style>的早期加载<head>,以便早日适用,并且用户看不到“半生不熟”页面

  • <script>关闭之前加载<body>

例如,参见HTML5样板

https://github.com/h5bp/html5-boilerplate/blob/master/index.html

永远不要使用内联Javascript或CSS,因为这会增加后续页面加载的大小(相同的代码会一次又一次地加载......)