与jquery版本1,版本2和版本3版本有什么区别?

时间:2017-01-12 04:26:16

标签: javascript jquery

我最近偶然发现使用jQuery版本2的页面webchart.js设计,我正在使用jQuery版本1.

要使代码工作,请看它现在使用最新版本,然后我检查了jQuery核心支持,他们发布了jQuery 3。

我正在考虑现在使用版本3,但我正在寻找版本3是否存在兼容性问题,它只能在特定设备上使用。

1 个答案:

答案 0 :(得分:197)

主要版本

1.0版:首次稳定发布 版本2.0:删除了IE 6-8对性能改进和文件大小减少的支持 版本3.0:Promises/A+支持延迟,$.ajax$.when.data() HTML5兼容

所有版本

+----------------+--------------------+----------------------------+----------------+---------------------------------------------------------------------------------------+
| Version Number |    Release Date    |       Latest Update        | Size Prod (KB) |                                   Additional Notes                                    |
+----------------+--------------------+----------------------------+----------------+---------------------------------------------------------------------------------------+
| 1.0            | August 26, 2006    |                            |                | First stable release                                                                  |
| 1.1            | January 14, 2007   |                            |                |                                                                                       |
| 1.2            | September 10, 2007 | 1.2.6                      | 54             |                                                                                       |
| 1.3            | January 14, 2009   | 1.3.2                      | 55.9           | Sizzle Selector Engine introduced into core                                           |
| 1.4            | January 14, 2010   | 1.4.4                      | 76             |                                                                                       |
| 1.5            | January 31, 2011   | 1.5.2                      | 83             | Deferred callback management, ajax module rewrite                                     |
| 1.6            | May 3, 2011        | 1.6.4                      | 89             | Significant performance improvements to the attr() and val() functions                |
| 1.7            | November 3, 2011   | 1.7.2 (March 21, 2012)     | 92             | New Event APIs: .on() and .off(), while the old APIs are still supported.             |
| 1.8            | August 9, 2012     | 1.8.3 (November 13, 2012)  | 91.4           | Sizzle Selector Engine rewritten, improved animations and $(html, props) flexibility. |
| 1.9            | January 15, 2013   | 1.9.1 (February 4, 2013)   | 90             | Removal of deprecated interfaces and code cleanup                                     |
| 1.10           | May 24, 2013       | 1.10.2 (July 3, 2013)      | 91             | Incorporated bug fixes and differences reported from both the 1.9 and 2.0 beta cycles |
| 1.11           | January 24, 2014   | 1.11.3 (April 28, 2015)    | 95.9           |                                                                                       |
| 1.12           | January 8, 2016    | 1.12.4 (May 20, 2016)      | 95             |                                                                                       |
| 2.0            | April 18, 2013     | 2.0.3 (July 3, 2013)       | 81.1           | Dropped IE 6–8 support for performance improvements and reduction in filesize         |
| 2.1            | January 24, 2014   | 2.1.4 (April 28, 2015)     | 82.4           |                                                                                       |
| 2.2            | January 8, 2016    | 2.2.4 (May 20, 2016)       | 85.6           |                                                                                       |
| 3.0            | June 9, 2016       | 3.0.0 (June 9, 2016)       | 86.3           | Promises/A+ support for Deferreds, $.ajax and $.when, .data() HTML5-compatible        |
| 3.1            | July 7, 2016       | 3.1.1 (September 23, 2016) | 86.3           | jQuery.readyException added, ready handler errors are now not silenced                |
| 3.2            | March 16, 2017     | 3.2.1 (March 20, 2017)     | 84.6           | Hotfixes for regressions that were introduced in the 3.2.0                            |
| 3.3            | January 19, 2018   | 3.3.1 (January 20, 2018)   | 84.8           | Deprecation of old function calls, functions that accept classes now support them     |
|                |                    |                            |                | defined in an array                                                                   |
+----------------+--------------------+----------------------------+----------------+---------------------------------------------------------------------------------------+

参考:https://en.wikipedia.org/wiki/JQuery#Release_history

主要版本的详细说明

1.0版是jQuery的第一个稳定版本。此版本支持旧版Web浏览器,它们不再受到各自开发人员的支持。如果您希望使用较旧的Web浏览器访问大量访问者,那么这肯定是最适合的版本。

版本2.0放弃了对Internet Explorer 6-8的支持,以提高jQuery的整体性能并减少库的文件大小。简单来说:文件大小版本2.0比版本1.0更快更小,但它不再支持旧的Web浏览器。由于微软放弃了对Windows XP的支持,因此可以合理地安全地假设您的访问者将使用与版本2.0兼容的浏览器,除非您事先知道情况并非如此(请参阅版本1.0)。

随着3.0版本的发布,版本1.11.1和2.1.1将升级到jQuery Compat 3.0和jQuery 3.0。 jQuery Compat 3.0仍然支持Internet Explorer 8等旧版浏览器,而常规版3.0只支持常青浏览器(特定浏览器的当前版本和以前版本)。

随着3.0版的发布,没有理由坚持版本1.0或2.0。官方jQuery博客的一些注释:

  
  • 如果您需要支持最广泛的浏览器,包括IE8,   Opera 12,Safari 5等使用jQuery-Compat 3.0.0软件包。   我们为大多数网站推荐此版本,因为它提供了   所有网站访问者的最佳兼容性。
  •      
  • 如果您的网站仅适用于常青的前沿浏览器,或者   是一个包含在webview中的基于HTML的应用程序(例如PhoneGap或   您知道哪些浏览器引擎正在使用中的Cordova)   jQuery 3.0.0包。
  •      
  • 在我们另外宣布之前,两个包都将包含相同的内容   相应编号的主要版本和次要版本的公共API。这个   应该让开发人员可以轻松地在两者之间切换   最大限度地兼容第三方jQuery插件。

参考:https://blog.jquery.com/2014/10/29/jquery-3-0-the-next-generations/