我在谷歌CDN的官方文档中读到,这是jQuery:的src
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
然而,在每次版本更新时都必须更改我的jQuerysrc
引用,这很烦人。
我发现,如果我将版本设置为1
,那么Google将返回最新版本的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?
更新2014年7月3日:截至目前,jquery-latest.js
不再更新。来自jQuery博客:
我们知道http://code.jquery.com/jquery-latest.js被滥用因为CDN统计数据显示它是最受欢迎的文件。如果它只是被开发人员用来制作本地副本。
我们决定停止更新此文件以及缩小的副本,同时保留这两个文件版本1.11.1。
谷歌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可能也不会总是给你你期望的版本。在撰写本文时,它链接到jQuery1.x的最新版本,尽管jQuery2.x也已经发布。这是因为jQuery1.x与包括IE6/7/8在内的旧浏览器兼容,而jQuery2.x则不兼容。如果您想要最新版本的jQuery2.x,那么(目前)您需要显式地指定它。
这两个版本具有相同的API,因此对于兼容的浏览器没有感知差异。然而,jQuery1.x的下载量比2.x大。
我不知道它是否在哪里发布,但您可以通过省略次要版本号和内部版本号来获得最新版本。
最新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引用。
如果您希望使用jQuery CDN而不是Google托管的jQuery库,您可以考虑使用它,并且确保使用最新版本的jQuery:
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
使用谷歌托管的最新jquery版本
人类:
-
https://developers.google.com/speed/libraries/#jquery
-
获取片段:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
- 将其放入代码中
- 确保它有效
Bots:
- 等待一个人来做