如何正确压缩Jquery和许多插件?

时间:2009-07-26 01:49:02

标签: javascript jquery jquery-plugins compression

我正在尝试清理网站的javascript。我发现我网站的标题看起来像这样并且在不断增长:

<script type="text/javascript" src="jquery.base.js"></script>
<script type="text/javascript" src="jquery.plugin1.js"></script>
<script type="text/javascript" src="jquery.plugin2.js"></script>
<script type="text/javascript" src="jquery.plugin3.js"></script>
<script type="text/javascript" src="jquery.plugin4.js"></script>

我很清楚许多http请求的负面影响。该网站还有许多嵌入式js,需要将其拉入外部文件。我想知道我是否能够将所有这些粘贴在一起并通过一些压缩运行它会导致问题吗?我希望有人有一些类似的经历。

6 个答案:

答案 0 :(得分:5)

将它们全部复制并粘贴到一个脚本中,通过minifier运行它们,保存生成的文件并从页面底部链接到它(这样DOM加载时无需等待加载该文件),并确保你的服务器gzips它。

Gzipping将为您节省更多费用。除了减少的HTTP请求之外,这两者可以轻松地将文件大小减少80%。

答案 1 :(得分:3)

如果您的网站可以运行php:http://code.google.com/p/minify/

我还建议您阅读:http://www.smashingmagazine.com/2009/07/19/how-to-automate-optimization-and-deployment-of-static-content/

并且:http://net.tutsplus.com/tutorials/php/3-ways-to-speed-up-your-site-with-php/

在回答您的问题时,它会正常运行,但代码的可维护性也会消失。如果你使用像minify这样的东西,你只需要更新你的静态javascripts / css所包含的html,你就会得到一个很好的缩小的自动更新静态内容。

答案 2 :(得分:2)

我建议您查看Supercharging Javascript in PHP有关合并和缓存Javascript的良好做法。

答案 3 :(得分:1)

我发现Yahoo Compressor最适合缩小javascript。这是一个链接: YUI Compressor

此外,您可能希望将所有这些脚本文件引用移动到页面底部,以便页面的其余部分可以加载更快,然后可以下拉这些脚本。

答案 4 :(得分:0)

是的,您可以将它们复制并粘贴在一起。确保维护源顺序(即在jquery.plugin1.js之前保留jquery.base.js的内容,这在jquery.plugin2.js之前等)。它也可能值minifying

答案 5 :(得分:0)

通常您可以合并和压缩脚本文件。根据您的服务器端框架,您可能已经具有相应的例程,例如ASP.NET复合脚本http://msdn.microsoft.com/en-us/library/cc488552.aspx。如果不这样做,则取决于您的服务器如何为deflate或gzip压缩文件设置正确的http标头(假设您手动合并并压缩它们)。