首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在jquery mobile中加速js加载?

如何在jquery mobile中加速js加载?
EN

Stack Overflow用户
提问于 2013-05-20 17:41:30
回答 3查看 2K关注 0票数 2

我需要加快jquery mobile的ui加载时间。当我尝试使用head.js方法并行加载js文件时,在显示基本的html页面后,它将只显示3-5秒的jQuery移动UI。我也尝试过CDN托管的js文件,它与下载的js文件没有任何区别。

有没有办法缓存jquery移动js文件,以便加速ui渲染?

谢谢。

EN

回答 3

Stack Overflow用户

发布于 2013-05-20 18:06:41

压缩Javascript

当使用其他插件,甚至你的代码时,总是使用压缩的js文件。它们更小,加载速度更快。如果你看一下,你会发现jQuery和jQuery手机都提供了压缩版本。

您还应该压缩您的js文件。可以很容易地找到工具。

分析您的js文件加载

通过分析js文件初始化来发现有问题的文件。你可以使用像这样的插件。它显示了文件的细目-只需转到“Net”选项卡。您还可以按文件类型进行过滤。

使用正确的js文件源

如果你正在创建一个Phonegap应用程序,你所有的js文件都应该存储在本地,但是如果你正在使用它作为一个普通的web应用程序,那么就像问题中提到的那样使用CDN源。

优化Javascript放置

如果可能,将javascript放在HTML文件的末尾。注意Google analytic和其他统计数据跟踪软件是如何想要位于结束标签之前的。

这允许首先加载和呈现大多数页面内容(如图像、表格、文本)。用户看到内容正在加载,所以页面看起来很有响应性。此时,繁重的javascripts可以在接近尾声时开始加载。

基本上,在HTML末尾初始化javascript,就在标签之前。有时,这可能会给jQuery手机带来问题。在这种情况下,让jQuery和HTML在HEAD中初始化,在jQuery端初始化其他所有内容。

按需加载Javascript

所有不必要的js文件都应该在主要内容加载之后程序化地加载。

函数:

代码语言:javascript
运行
复制
$import('http://example.com/myfile.js')

将在文档的头部添加一个元素,就像直接包含文件一样。

缓存您的文件:

如果您使用PHP作为服务器技术,则可以使用can来提高加载性能。基本上,您将设置浏览器的缓存过期时间。为此,您需要访问PHP或Apache的.htaccess,以便可以发回特定的缓存头(阅读有关缓存的更多信息)。

合并您的文件

最后,当其他一切都停止时,你应该把你的js代码组合成一个单独的文件。您的浏览器一次只能连接到打开的网站那么多-考虑到设置每个连接的开销,将几个小脚本组合成一个较大的脚本是有意义的。

Gzip一切

的好处,通常是文件大小减少了75%或更多,太好了,不容忽视:使用超文本传输协议压缩优化您的站点。这种方法在较旧的浏览器上不起作用,但是因为您使用的是jQuery Mobile,所以不需要担心较旧的浏览器。

票数 6
EN

Stack Overflow用户

发布于 2013-05-20 17:55:23

鼓励使用CDN是因为,如果相同的CDN在多个站点上共享,则文件将从缓存中使用。

如果您使用的是安卓或iPhone WebView,那么建议您不要使用CDN,因为它会禁用离线功能。

如果你的应用程序是基于web的应用程序,那么考虑使用可用的缓存机制。这个tutorial will get you started with caching

票数 0
EN

Stack Overflow用户

发布于 2013-05-20 18:11:33

如果你使用的是Android WebView,你可以从android应用的assets文件夹中加载js。这是非常不鼓励的,因为你每次更新js时都需要更新app,但在某些情况下这是最好的解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16646651

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档