我正在使用Wordpress开发网站,我想使用laQuery版本的jQuery。
为了确保我使用lates版本,我从Binary Bonsai's example找到了这段代码。
我看到的是,他实际上是在Google API上链接到jQuery。
所以我的问题是,什么更好。
要链接到外部页面上的jQuery吗? http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js
或在本地拥有jquery文件?
wp_enqueue_script('jquery', '/js/jquery-1.4.2.min.js');
更新
感谢科林,答案实际上就在这里:
Why should I use Google's CDN for jQuery?
但是,如果您的搜索字词中没有Google
,就像我一样,我会复制John Gietzen的答案
增加可用的并行度。
(大多数浏览器一次只能从任何给定的站点下载3或4个文件)
会增加缓存命中的可能性。
(随着越来越多的网站遵循这种做法,越来越多的用户已经准备好了文件。)
确保有效负载尽可能小。
(谷歌可以预先压缩文件,使下载时间非常短。)
减少服务器使用的带宽量。
(谷歌基本上提供免费带宽。)
确保用户获得地理上接近的响应。
(谷歌的服务器遍布全球,进一步缩短了延迟。)
答案 0 :(得分:8)
链接到Google CDN副本时,您可以省略小版本或点版本,如下所示:
鉴于这种灵活性,我更喜欢远程版本,只需更改URL并加载文件(在大多数情况下),就可以快速修复错误,因为它是从另一个域中提取的(和不在您域名的并行请求中)。还有其他相关问题,here和here。
答案 1 :(得分:6)
那不会得到最新版本。这样每次都会得到1.4.2。
但这会:
http://code.jquery.com/jquery-latest.min.js
尽管如此,我更喜欢本地,并将版本锁定在我开发它的位置并验证它正在工作......
答案 2 :(得分:3)
我确信每种都有利弊,但我个人更喜欢在本地使用该文件。我的理由是,有可能在将来的某个时候某个功能可能会被弃用,如果您碰巧在现在稳定且长期未修改的脚本中使用该功能,那么它可能会破坏您的代码。
答案 3 :(得分:1)
正如尼克·克拉弗在答案中提到的,你可以从谷歌CDN的URL中省略主要/次要版本。
将CDN用于这些类型的文件的主要好处是性能优势和带宽节省。
任何最近的浏览器都会使用以前访问过的文件的缓存副本,并且由于这个(以及许多其他文件)被用于网络中的数千(数百万?)个网站,因此访问您网站的用户很可能已经缓存了这个文件。
因此它可以节省用户带宽以及您自己的带宽。这绝不是一件坏事。
另外,如果有一个新版本的jQuery框架可用,即使你在本地托管它,你仍然需要更新本地副本,不是吗?
答案 4 :(得分:1)
1)本地文件
<script src="js/jquery-latest.min.js" type="text/javascript"></script>
或者,如果您使用Wordpress: wp_enqueue_script('jquery','/ js / jquery-latest.min.js');
您必须在新版本发布时下载最新版本,并将其重命名为jquery-latest.min.js。如果您在许多页面上对文件引用进行硬编码,那么它是最简单的。
2)来自Google CDN
<script src="https://www.google.com/jsapi"></script>
<script>
google.load('jquery', '1.4.2');
</script>
或
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
新版本发布时,您必须将版本号更新为最新版本。如果您有一个允许您更新单个地点以反映每个页面上的更改的模板,则比方法一更容易。
3)来自jQuery的服务器
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.pack.js"></script>
简单,因为它始终是最新的。但是,它可能不如谷歌的CDN那么可靠和快速。
答案 5 :(得分:0)
请注意,外部jquery.js文件是版本1.4.2,如果更新jQuery,则不会更改。你真的希望在你不知道的情况下更新jQuery代码库吗?如果您的代码正常运行,为什么要通过让jQuery版本自动更新来冒险破解它?