jQuery Mobile CDN vs local

时间:2012-03-12 16:51:12

标签: jquery web-applications jquery-mobile smartphone

我不确定我是否使用cdn或local。本地是否意味着需要在智能手机上安装jquery资源,以便可以使用离线应用程序?

2 个答案:

答案 0 :(得分:6)

在这种情况下,本地意味着您自己托管文件(作为网站的一部分),而不是依赖于CDN,也不意味着它们需要安装在设备上。

下载库后,可以在没有数据连接的情况下使用应用程序,直到清除缓存。当然,这取决于您的实际应用程序,如果它需要数据连接来查询服务器上的内容它将无法工作,但这与JS库的脱机可用性无关。

无论哪种方式,您最初都需要数据连接。

CDN托管库的好处是它可能已经被加载到另一个网站,因此当用户访问您的网站时,他们不需要再次下载它。

但是,还有其他因素需要考虑,例如:

  • DNS解析
  • 库碎片(不同版本)

然而,对于jQueryMobile,它更可能是另一个网站使用它(和相同的版本),而不是jQuery,所以我建议使用CDN版本。

答案 1 :(得分:3)

使用CDN的主要好处是用户可能已经在他们的设备上拥有该文件,他们只能从缓存加载它。另一个好处是CDN通常会被设置为在文件发送时正确压缩文件,大大减小了文件传输时的大小(压缩时jQuery 1.7 Core从大约90KB变为30KB)。 CDN可能也有适当的过期标头,如果您在自己的服务器上托管文件,请确保将其设置为正确提供文件。

如果您正在创建本机应用程序,那么您可能希望在本地托管任何JS文件,因此它不需要网络连接来运行该应用程序。

如果您正在创建一个Web应用程序,那么您可以使用缓存清单告诉浏览器当用户在没有网络连接的情况下返回您的站点时要缓存哪些文件。

这是一个开始使用缓存清单的教程:http://www.html5rocks.com/en/tutorials/appcache/beginner/

我没有全面阅读,但MDN通常有一些很好的文档:https://developer.mozilla.org/en/Offline_resources_in_Firefox