2012-03-12 70 views

回答

6

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

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

无论哪种方式,您首先需要一个数据连接。

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

然而,还有其他因素需要考虑,例如:

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

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

+0

OK THX,是不是总是更好那么做本地的,因为表现如何? – AdrianoCelentano 2012-03-12 17:00:40

+1

我认为你仍然误解了本地的意思,我已经更新了我的答案,以澄清问题。 – ntziolis 2012-03-12 17:06:31

+0

我不知道如果我得到它(也许是因为我的英语不好)是否有一般性的建议何时使用CDN和当地? – AdrianoCelentano 2012-03-12 17:07:37

3

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

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

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

这里是开始使用高速缓存舱单教程:http://www.html5rocks.com/en/tutorials/appcache/beginner/

我没有给它一个彻底的读操作,但通常MDN有一些很好的文档:https://developer.mozilla.org/en/Offline_resources_in_Firefox

+0

Thnaks so much guys :-) – AdrianoCelentano 2012-03-12 17:16:00

+1

+1 Cache Manifest,同时也指出如果本地不需要任何网络连接。 – Cymbals 2012-04-12 15:59:55