航歌 - 做最好的开发者知识平台

留言首页

当前位置：
首页
>
编程社区
>
其他
> jQuery - 不同版本的差异汇总（版本选择建议）

jQuery - 不同版本的差异汇总（版本选择建议）

2018-12-18 发布：hangge 阅读：9507

jQuery 自 2006 年诞生以来，一个发行了 1.x、2.x、3.x 这三个大版本。而在这三个大版本下又细分了许多小版本。可能有些小伙伴不太清楚这些版本有什么区别？实际开发中应该选用哪个版本？下面我对其做个总结。

一、1.x、2.x、3.x 三大系列的区别

1，IE 的支持情况比较

（1）情况分析

1.x：支持 ie6、ie7、ie8

2.x、3.x：不支持 ie6、ie7、ie8

（2）选择建议

如果需要兼容 ie678：只能选择 1.x

如果不需要兼容 ie678：可以选择 2.x、3.x。因为 1.x 中有大部分代码是对老旧浏览器做的兼容，这个就增加了运行的负担，影响了运行效率。

2，插件的支持情况比较

（1）情况分析

由于 jQuery 的版本都是不向后兼容的，导致了基于 jQuery 开发的插件会有兼容性问题。也就是说当新版本的 jQuery 推出后，原有的插件可能无法正常使用，需要插件作者重新开发新版本。

（2）选择建议

为了保证与各种插件有更好的兼容性可以选择 1.x 的版本。

3，新特性比较

（1）2.x 相较于 1.x 没有增加什么新特性，主要是去除了 ie678 的支持，提升了性能，减小了体检。

（2）3.x 相较于之前版本，增加了许多新特性，也改变一些以往的特性，具体可以参考我之前写的这篇文章：

jQuery - jQuery3的新特性汇总（附样例）

二、具体版本建议

1，版本历史

版本号 | 发布日期 | 最新更新 | 大小（KB） | 备注
1.0 | 2006年8月26日 | | | 第一个稳定版本
1.1 | 2007年1月14日 | | |
1.2 | 2007年9月10日 | 1.2.6 | 54 |
1.3 | 2009年1月14日 | 1.3.2 | 55.9 | 将 Sizzle 选择器引擎引入核心
1.4 | 2010年1月14日 | 1.4.4 | 76 |
1.5 | 2011年1月31日 | 1.5.2 | 83 | 延迟回调管理，ajax 模块重写
1.6 | 2011年5月3日 | 1.6.4 | 89 | 显著改善 attr() 与 val() 的性能
1.7 | 2011年11月3日 | 1.7.2 (2012年3月21日) | 92 | 新的事件 API：.on() 和 .off()，而旧的 API 仍然支持。
1.8 | 2012年8月9日 | 1.8.3 (2012年11月13日) | 91.4 | 重写 Sizzle 选择器引擎，改善动画和 $(html, props) 的灵活性。
1.9 | 2013年1月15日 | 1.9.1 (2013年2月4日) | 90 | 移除弃用接口，清理代码
1.10 | 2013年5月24日 | 1.10.2 (2013年7月3日) | 91 | 修复了 1.9 和 2.0 beta 版本周期的 bug 和差异
1.11 | 2014年1月24日 | 1.11.3 (2015年4月28日) | 95.9 |
1.12 | 2016年1月8日 | 1.12.4 (2016年5月20日) | 95 |
2.0 | 2013年4月18日 | 2.0.3 (2013年7月3日) | 81.1 | 除去对 IE 6-8 的支持以提高性能，并降低文件大小
2.1 | 2014年1月24日 | 2.1.4 (2015年4月28日) | 82.4 |
2.2 | 2016年1月8日 | 2.2.4 (2016年5月20日) | 85.6 |
3.0 | 2016年6月9日 | 3.0.0 (2016年6月9日) | 86.3 | Deferred、$.ajax、$.when 支持 Promises/A+，令 .data() 兼容HTML5
3.1 | 2016年7月7日 | 3.1.1 (2016年9月23日) | 86.3 | 加入 jQuery.readyException，ready handler 错误现在不会不显示了
3.2 | 2017年3月16日 | 3.2.1 (2017年3月20日) | 84.6 | 增加了对检索<template>元素内容的支持，弃用了多种旧方法。
3.3 | 2018年1月19日 | 3.3.1 (2018年1月20日) | 84.8 | 弃用旧函数，函数现在可以接受类，并支持其写成数组格式。

2，1.x 常用版本

1.4.2：稳定性和兼容性都很出色，插件最多，但性能不如下面后面的几个版本。

1.7.2：性能提升，插件第二多，ajax 和 attr 等 api 有少许修改。

1.8.3：最后一个支持 IE6 的稳定版

1.9.1：开始移除了不少方法，事件绑定推荐使用 on 方法一个代替所有的。

1.12.4：1.x 时代最后一个稳定版本，仅支持 IE8，不支持 IE6/7。

3，2.x、3.x 版本

除非有特殊要求（比如面向移动端），一般情况下这两大版本使用人的确很少：

2.x 最后一个稳定版本：2.2.4

3.x 最新版本：3.3.1

上一篇jQuery - jQuery3的新特性汇总（附样例）下一篇JS - 将数组格式的字符串转换成数组（附样例）

打赏支持

评论（0）

提交

文章类别

编程社区
SwiftFlex / FlashHTML5 / CSS3CordovaSpringBoot / CloudDocker / K8sReact / RN其他
奇文共赏

本类相关

TIOBE - 2019年4月编程语言排行

Python - 文件读写操作详解2（读写csv文件）

Zipkin服务端搭建使用教程4（API接口介绍与使用）

TIOBE - 2022年5月编程语言排行

非关系型数据库（NoSQL）相关概念介绍（附：常见的非关系型数据库）

PHP - 开发运行环境搭建（Apache+PHP）

JS - 获取URL中参数值的几种方法（地址?号后的GET值）

WebLogic - 修改JVM环境参数教程（附样例）

jQuery - 第三方表格插件DataTables使用详解17（数据搜索）

MQTT系列教程2（消息服务器EMQ的搭建和使用）

移动版给我留言打赏支持

© copyright 2006-2021 航歌. All rights reserved. 苏ICP备14040777号