jQuery 一共分了 1.x、2.x、3.x 这三个大版本。

jQuery 的版本都是不向后兼容的! jQuery 的版本都是不向后兼容的! jQuery 的版本都是不向后兼容的!重要的事情说三遍哈

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

1,IE 的支持情况比较

(1)情况分析
  • 1.x版本:兼容ie678,使用最为广泛的,官方只做bug维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.4

  • 2.x版本:不兼容ie678,很少人使用,官方只做bug维护,功能不再新增。如果不考虑兼容版本低的浏览器可以使用2.x,最终版本:2.2.4

  • 3.x版本:不兼容ie678,只支持最新的浏览器。除非特殊要求,一般不会使用3.x版本的,很多老的jQuery插件不支持这个版本。目前该版本是官方主要更新维护的版本。截至2018年6月13日,最新版本:3.3.1

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

2,新特性比较

(1)2.x 相较于 1.x 没有增加什么新特性,主要是去除了 ie678 的支持,提升了性能,减小了体检。
(2)3.x 相较于之前版本,增加了许多新特性,也改变一些以往的特性。
 

二、具体版本建议

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 - 不同版本的差异對比的更多相关文章

  1. [转]jQuery不同版本区别

    原文转载自csdn:http://blog.csdn.net/u010167032/article/details/23666145 了解不同版本之间的差异,与助于选择适合自己项目的版本. ⒈4重要新 ...

  2. git日志输出格式及两个版本之间差异列表

    查看commit id git log --pretty=format:"%h" git log --pretty=format:"%H" 获取两个版本间差异的 ...

  3. jquery各版本区别

     jquery版本区别:          1.3一般功能够 1.4.2一般功能够而且稳定 1.7+比较新特性 2不支持老IE 兼容的话最好选 1.x.稳定性就用1.7或者1.4,其中1.4的体积相对 ...

  4. Android USER 版本与ENG 版本的差异--MTK官方解释

     分类: Android(4)  Description]Android USER 版本与ENG 版本的差异 [Keyword]USER ENG user eng 用户版本 工程版本 差异 [Solu ...

  5. SSIM(结构相似度算法)不同实现版本的差异

    前言 最近用ssim测试图片画质损伤时,发现matlab自带ssim与之前一直使用的ssim计算得分有差异,故和同事开始确定差异所在. 不同的SSIM版本 这里提到不同的ssim版本主要基于matla ...

  6. Android USER 版本与ENG 版本的差异

    Android USER 版本与ENG 版本的差异 [Keyword] USER ENG user eng 用户版本 工程版本 差异 [Solution] Google 官方描述: USER/USER ...

  7. Ubuntu,kubuntu与xubuntu的差别 Ubuntu各版本主要差异

    Ubuntu各版本主要差异 Ubuntu官方考虑到使用者的不同需求,提供各种不同的发行版.虽然发布了几种版本的Ubuntu系统,但是它们的核心系统是一模一样的.可以这么说不同发行版的Ubuntu的区别 ...

  8. 使用svn diff的-r参数的来比较任意两个版本的差异

    1 svn diff的用法1.1 对比当前本地的工作拷贝文件(working copy)和缓存在.svn下的版本库文件的区别 svn diff 1.2 对比当前本地的工作拷贝文件(working co ...

  9. jquery不同版本导致的checkbox设置了属性,但是没有选中效果

    由于本人好久不做B/S了,今天同学问我个问题才发现了jquery版本还是存在差异的,今天写的就是关于获取checkbox属性的方式(可能不应该叫属性了其实,后面就知道了). 看下面的代码截图吧 < ...

  10. Jquery各个版本的区别

    一: 一般原则是越新越好,jQuery版本是在不断进步和发展的,最新版是当时最高技术水平,也是最先进的技术理念. 但个人的角度来看.是最新版本x.x.0的上一版本最好.比如说1.10.0版,上一版本是 ...

随机推荐

  1. 火山引擎ByteHouse发布高性能全文检索引擎

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群.  随着数字时代的发展,数据的来源和生成方式越来越广泛,数据形态也愈加丰富.   以某电商平台的数据情况举例.该电 ...

  2. Python爬虫Post请求返回值为-1000

    今天写了一个简单的爬虫程序,为了爬取kfc官网的餐厅数据,代码如下 # ajax的post请求--肯德基官网 def create_request(page): url='http://www.kfc ...

  3. for循环以及常用的遍历(迭代)用法

    for循环以及常用的遍历(迭代)用法   概念:(概念才是高楼的地基!) for循环是一个计次循环,一般运用在循环次数已知的情况下.通常适用于枚举或遍历序列,以及迭代序列中的元素. 注意*:迭代变量用 ...

  4. 解锁 SQL Server 2022的时间序列数据功能

    解锁 SQL Server 2022的时间序列数据功能 SQL Server2022在处理时间序列数据时,SQL Server 提供了一些优化和功能,比如 DATE_BUCKET 函数.窗口函数(如 ...

  5. 使用maven搭建父工程与子工程

    父/子工程的作用: 1.依赖管理 2.配置信息共享 3.模块化 4.版本控制 5.提高重用性可维护性 什么是dependencyManagement: maven中的一个元素,用于集中管理项目中的依赖 ...

  6. 【RabbitMQ】05 通配符模式

    需要设定交换机模式为通配符模式 Topic 在绑定规则上采用通配描述实现动态绑定 创建通配符模式的生产者 package cn.dzz.topicQueue; import com.rabbitmq. ...

  7. 【Vue】接口模块化处理

    在前端Vue项目中,接口会被统一放在一个目录中管理: 一个模块的所有接口放在一个JS文件中: 文件会导入封装好的请求方法,和动态绑定的接口地址 import request from '@/utils ...

  8. ubuntu22.04系统环境下使用vs code安装pylint检查python的代码错误

    紧跟前文: ubuntu18.04系统环境下使用vs code安装pylint检查python的代码错误 pylint官网: https://pylint.pycqa.org/ =========== ...

  9. 神秘 Arco 样式出现,祭出 Webpack 解决预期外的引用问题

    神秘 Arco 样式出现,祭出 Webpack 解决预期外的引用问题 Webpack是现代化的静态资源模块化管理和打包工具,其能够通过插件配置处理和打包多种文件格式,生成优化后的静态资源,核心原理是将 ...

  10. localAI: 编译步骤说明

    懒人通道 官网提供了懒人包,使用的时候不需要关注整个打包流程,,下面是官方的cuda示例,当然官方提供可选项很多,Available: cublas, openblas, clblas, metal, ...