压缩整个网页(HTML和JS)

时间:2011-09-06 16:34:58

标签: javascript html compression

我找到了一些工具like this one,让我可以为网页中的javascript代码创建“自动提取”javascript,它采用各种技术来最小化传输大小。

我有a webpage,其中有相当大的javascript代码块。但是因为我还没有优化文件大小,但我正在考虑用我的网站的HTML位做同样的事情。在我的博客页面上,PHP脚本从大量文本文件中提取HTML片段,并将它们连接成一个发送出来的巨大HTML文件。 Chrome告诉我用gzip压缩它会使文件大小减少三分之二。

然而,我确实关闭了gzip压缩,因为发生的事情是如果你下载了我通过Internet Explorer托管的任何我的zip档案,那么herp derp会忽略枪杀它们,因此IE下载的文件总是被破坏。如果我解决这个小问题,我想我可以重新打开gzip,但暂时我想试着看看我是否可以创建一个自解压的HTML页面。是否有可能让javascript提取一个巨大的HTML字符串并将整个块添加为body元素的子元素?那会有用吗?

2 个答案:

答案 0 :(得分:2)

这样做会慢一些,而且非常容易出错。任何Javascript错误都会导致整个页面无法呈现,并且您的SEO将被绝对销毁。坚持定期呈现HTML:当浏览器下载/解析HTML时,它将开始获取其他资源(图像,脚本,css)并呈现布局。不要专注于严格的最小下载大小,而是最快的整体体验。

大量使用免费提供的CDN。最重要的两个:谷歌和微软,它们托管各种脚本,如jQuery和Modernizr。尽可能坚持使用Google,它们似乎比微软具有更高的采用率,因此热门缓存的可能性更高。过去,将CDNJS用于其他公开可用的库 - 它们有很多。

缩小现有的Javascript,并为静态和动态页面启用内容压缩。不要强行打开,让浏览器请求它。您看到腐败的IE版本是什么?自IE6以来,我还没有看到这个问题......

使用Javascript打包程序会使您的网站显得更慢,但代价是可以节省更多的传输字节。脚本不仅必须运行,而且现在要求用户的浏览器在脚本运行之前执行额外的(可能很大的)额外步骤。

如果您尝试下载单个文件(使用“另存为”对话框),则无法使用内容类型为“application / zip”的gzip。实际的Zip格式可以在PHP中使用,而是使用这些库。

答案 1 :(得分:0)

快速获胜Cloudflare具有HTML,JS和CSS的自动缩小功能。我们已经使用它一段时间了,效果很好。绝对值得一看。