103

我在 Google CDN 的官方文档中读到这是srcjQuery:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>

src但是,每次版本更新都必须更改我的 jQuery 引用,这很烦人。

我发现如果我将版本设置为1然后谷歌返回最新版本的 jQuery。

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js
/*! jQuery v1.8.2 jquery.com | jquery.org/license */

这是正确的做法吗?是否有任何官方 URL 可以引用托管在 Google CDN 上的最新版本的 jQuery?

4

4 回答 4

183

2014 年 7 月 3 日更新:截至目前,jquery-latest.js不再更新。来自jQuery 博客

我们知道http://code.jquery.com/jquery-latest.js被滥用,因为 CDN 统计显示它是最受欢迎的文件。如果开发人员仅使用它来制作本地副本,情况就不会如此。

我们已决定停止更新此文件以及缩小副本,将这两个文件永久保留在 1.11.1 版本。

Google CDN 团队已加入我们的行列,以防止网络意外损坏,并且不再更新 http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js上的文件。该文件也将在 1.11.1 版本中保持锁定状态。

由于历史原因,以下现在没有实际意义的答案被保留在这里。


不要这样做。说真的,不要。

链接到 jQuery 的主要版本确实有效,但这是一个坏主意——每次十进制更新都会添加和弃用全新的功能。如果您在没有完全测试代码的情况下自动更新 jQuery 如果某些关键方法的 API 发生了变化,您将面临意外的意外风险。

这是您应该做的:使用最新版本的 jQuery 编写代码。测试它,调试它,当它准备好用于生产时发布它。

然后,当新版本的 jQuery 推出时,问问自己:我的代码中是否需要这个新版本?例如,是否有一些以前不存在的关键浏览器兼容性,或者它会加速我在大多数浏览器中的代码?

如果答案是“否”,请不要费心将代码更新到最新的 jQuery 版本。这样做甚至可能会在您的代码中添加以前不存在的新错误。任何负责任的开发人员都不会在没有彻底测试的情况下自动包含来自另一个站点的新代码。

根本没有充分的理由总是使用最新版本的 jQuery。旧版本仍然可以在 CDN 上使用,如果它们适合您的目的,那么为什么还要更换它们呢?


第二个但可能更重要的问题是缓存。许多人在 CDN 上链接到 jQuery,因为许多其他网站都这样做,并且您的用户很有可能已经缓存了该版本。

问题是,缓存仅在您提供完整版本号时才有效。如果您提供部分版本号,那么远期的缓存就不会发生——因为如果这样做了,一些用户会从同一个 URL 获得不同的次要版本的 jQuery。(假设 1.7 的链接指向前一天的 1.7.1 和后天的 1.7.2。浏览器如何确保它今天获得最新版本?答案:不缓存。)

事实上,这里有几个选项及其到期设置的细分......

http://code.jquery.com/jquery-latest.min.js (无缓存)

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js(1 小时)

http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js(1 小时)

http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js(1 年)

因此,通过这种方式链接到 jQuery,您实际上消除了首先使用 CDN 的主要原因之一。


http://code.jquery.com/jquery-latest.min.js也可能并不总是为您提供您期望的版本。在撰写本文时,它链接到最新版本的 jQuery 1.x,尽管 jQuery 2.x 也已发布。这是因为 jQuery 1.x 兼容旧版浏览器,包括 IE 6/7/8,而jQuery 2.x 不兼容. 如果您想要最新版本的 jQuery 2.x,那么(目前)您需要明确指定它。

两个版本的 API 相同,所以对于兼容的浏览器没有感知上的差异。然而,jQuery 1.x 的下载量比 2.x 大。

于 2012-09-26T18:39:30.147 回答
8

我不知道它是否/在哪里发布,但您可以通过省略次要版本号和内部版本号来获得最新版本。

最新的 1.8.x:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>

最新的 1.x:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>

但是,请记住,这些链接的缓存超时时间比完整版本号要短得多,因此您的用户下载它们的次数可能比您想要的多。有关更多信息,请参阅Google CDN 中对 jQuery 1.x.0 的参考中的关键 .0

于 2012-09-26T18:38:30.653 回答
8

如果您希望使用 Google 托管的 jQuery 库以外的 jQuery CDN,您可以考虑使用它并确保使用最新版本的 jQuery:

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
于 2012-09-26T18:42:44.367 回答
3

使用由 Google 托管的最新 jquery 版本

人类:

  1. https://developers.google.com/speed/libraries/#jquery

  2. 获取片段:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

  1. 把它放在你的代码中。
  2. 确保它有效。

机器人:

  1. 等一个人去做。
于 2017-11-20T18:21:37.523 回答