我应该使用哪个版本的jQuery?

24

几个月前,我并没有需要 jQuery 的地方,几乎忘记了它的存在。

然后我想起来了。于是,我前往 http://jquery.com/download/,结果却对发生了什么感到非常困惑。

我最后使用的是 1.8.3 版本,网页告诉我:

jQuery 1.x 系列在 jQuery 1.9.0 中有了重大更改。如果您正在从早期版本的 jQuery 进行升级或需要使用尚未更新的插件,我们强烈建议您同时使用 jQuery Migrate 插件。

好吧?jQuery 1.x 系列?那么 1.9.0 是哪一系列呢?

如果您不需要支持 IE8 及以下版本,那么 2.x 的说明相对简单明了。但究竟 1.11.0 是什么呢?

  • 它是否支持旧版 IE?准确来说是 8 及以下版本。
  • 如果我使用旧插件,是否需要使用迁移插件?
  • 我错过了什么吗?

由于我不确定应该使用哪个版本,所以我将继续使用 1.8.3,直到知道该使用哪个版本为止。


1
这将是有用的... http://blog.jquery.com/2014/01/24/jquery-1-11-and-2-1-released/ - buzzsawddog
@buzzsawddog 这并没有回答问题,为什么版本从1.9.1跳到了1.11? - user1537415
我们仍在使用1.11版本(上周五更新自1.10),因为有一些客户正在使用IE 8浏览器(而这并不容易消除)。请查看您可能正在使用的插件,我遇到了一些只能与1.8.3版本兼容的插件。1.9是一个重大更改版本, 所以如果情况需要,要准备更换插件。 - buzzsawddog
1
@Christian:109大,所以1.11 > 1.10 > 1.9 > 1.8。jQuery使用语义化版本控制:http://semver.org/(我猜,尽管次要版本实际上不应包含破坏性更改,但1.9确实包含)。 - Felix Kling
1
因此,软件版本控制可能很奇怪。我认为它们应该是1.01-1.09然后是1.1,但是......我们不看小数,1.10是指十比九大的一点。 1.1!= 1.10 - buzzsawddog
显示剩余4条评论
2个回答

14

关于jQuery 1.9.0和2.0发布的jQuery博客文章中提到:

  • jQuery 1.9和2.0具有相同的API。从这两个版本中删除了一些已弃用的功能,如$.browser。所有内容都在jQuery 1.9升级指南中详细说明。
  • jQuery 1.9与以前的版本一样,可在Internet Explorer 6、7和8(“oldIE”)上运行。可以将其视为从jQuery 1.8进行更干净、更轻量级、现代化API升级。
  • jQuery 2.0将无法在oldIE上运行。通过删除多个附着的代码层,它将比jQuery 1.9更快、更小。

因此,回答您的问题:

  1. 1.11.0仍支持IE 6、7和8,>=1.9.0的区别在于api
  2. 迁移插件可用于检测代码是否使用了已弃用或已删除的功能,建议使用它来检测旧插件是否使用了这些功能
  3. 你错过了解释这些更改的博客文章

3

如果你开始使用jQuery(在你的项目中没有使用它),并且需要支持IE8及更早版本,请使用最新版本1.11。如版本号所示,此版本属于1.x线。 1.x和2.x之间唯一的区别是IE支持。


那么在新项目中使用1.11,在更新一些过去制作的项目时使用1.9.1? - user1537415
3
如果你要使用1.9版本,你也可以使用1.11版本。重大的变化发生在1.9版本中。jQuery团队告诉你的是,如果你从早期版本切换到大于1.9的版本,你可以使用jQuery Migrate插件,但你可能不需要它,这取决于具体情况。如果你没有使用额外的插件,你可能不需要它。 - Oscar Paz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接