jQuery的历史版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery的历史版本相关的知识,希望对你有一定的参考价值。

(2007年9月):这一版去掉了对XPath选择符的支持,原因是相对于CSS语法它已经变得多余了。这一版能够支持对效果的更灵活定制,而且借助新增的命名空间事件,也使插件开发变得更容易。
jQuery UI(2007年9月):这个新的插件套件是作为曾经流行但已过时的Interface插件的替代项目而发布的。jQuery UI中包含大量预定义好的部件(widget),以及一组用于构建高级元素(例如可拖放的界面元素)的工具。 (2010年1月14号):对代码库进行了内部重写组织,开始建立一些风格规范。老的core.js文件被分为attribute.js,css.js,data.js,manipulation.js,traversing.js和queue.js;CSS和attribute的逻辑分离。
⒈4重要新特性
·常用方法的性能大幅提升:重写了大部分较早期的函数;
·更容易使用的设置函数(setter function):为所有对象新增了许多易用的设置函数;
·对Ajax的改进:引入了许多Ajax和JSON处理方面的更新,包括html5元素的序列化;
·attribute(改进了.attr()的性能)、jQuery()核心函数、CSS(.css()性能有两倍提升)、特效和事件、DOM操作等也有显著改进 (2011年1月31日):该版本修复了83个bug,解决了460个问题。重大改进有:重写了Ajax模块;新增延缓对象(Deferred Objects);jQuery替身——jQuery.sub();增强了遍历相邻节点的性能;jQuery开发团队构建系统的改进。
1.5新版本
美国时间2011年1月31日John Resig在jQuery官方博客发表文章,宣布jQuery 1.5正式版已经如期开发完成,可以下载使用。压缩版本jQuery Minified29KB,不压缩版本jQuery Regular(用于阅读和调试)207KB。由于jQuery已经成为目前最流行的javascript库,得到广泛的支持,新版本的发布当然非常引人注目。
重要变化:
1. Ajax重写
Ajax模块完全进行了重写。新增一个jXHR对象,为不同浏览器内置的XMLHttpRequest提供了一致的超集。对于XMLHttpRequest之外的传输机制,比如JSONP请求,jXHR对象也可以进行处理。(详情可以参见:jQuery.ajax文档)
此外,系统的可扩展性大大增强,可以附加各种数据处理器、过滤器和传输机制,为开发新的Ajax插件提供了方便。
2. 延迟对象
延迟对象(Deferred Object,jQuery.Deferred对象)是一个可链接的(chainable)实用工具对象,实现了Promise接口,可以在回调队列中注册多个回调、调用回调队列并转发任何同步/异步函数的成败状态。正如Using Deferreds in jQuery 1.5一文中说明的,其结果是在jQuery中能够将依赖于某个任务(事件)结果的逻辑与任务本身解耦了。这一点在JavaScript中其实并不新鲜,Mochikit和Dojo等已经实现有些日子了。由于jQuery 1.5的Ajax模块内置使用了延迟对象,因此通过jQuery编写Ajax程序将自动获得这一功能。
开发人员借此可以使用无法立即获得的返回值(如异步Ajax请求的返回结果),而且第一次能够附加多个事件处理器。
例如,使用了新的jQuery内部Ajax API就可以实现下面的代码了:
// Assign handlers immediately after making the request,// and remember the jxhr object for this request var jxhr = $.ajax( url: example.php ) .success(function() alert(success); ) .error(function() alert(error); ) .complete(function() alert(complete); );// perform other work here ... // Set another completion function for the request above jxhr.complete(function() alert(second complete); );
此外,使用jQuery.Deferred还可以开发自己的延迟对象。更多详情参见:延迟对象文档。
3. jQuery.sub()
jQuery 1.5提供了一种创建和修改jQuery副本的方式。可以用来添加不向外部公开的方法,或者对jQuery的某些方法进行重新定义以提供新功能,或者提供更好的封装、避免名称空间冲突。当然,也可以用来开发插件,但Resig强烈建议在开发插件之前,先考虑jQuery UI widget工厂。
值得注意的是,sub函数并不提供真正的隔离,所有方法、数据、调用仍然依靠jQuery本身来支持。
4. 遍历性能提高
在新版本中.children(),.prev(),.next()几个常用的遍历函数性能有了显著提高。
5. 内部开发系统
John Resig还特别提到了jQuery团队内部开发系统的两点改变:一是服务器端用Node.js替换了老的Java/Rhino系统,使得团队可以专注于JavaScript环境的新变化;二是所用的代码优化程序从Google Closure切换到UglifyJS,新工具的压缩效果非常令人满意。
jQuery 1.5.2 在1.5的基础上修正的大量的bug
jQuery 1.7b 2011年09月29日jQuery 1.7 的第一个 beta 测试版本,该版本修复了超过 50 个的问题以及带来一些新特性。
2011年11月4日jQuery1.7正式版发布。
新版本包含了很多新的特征,特别提升了事件委派时的性能尤其是在IE7下。
新增及改进项:
⒈新的事件 APIs: .on() and .off();
⒉提升了事件委派时的性能有了大幅度的提升,尤其是在IE7下;
⒊更好的在 IE 6/7/8 上支持 HTML5;
⒋切换动画更加直观;
⒌匿名模块定义 AWD
⒍jQuery.Deferred
⒎jQuery.isNumeric()
被删除的方法:
event.layerX and event.layerY
jQuery.isNaN() 2012年03月24日jQuery 1.7.2正式版发布。
该版本在1.7.1的基础上修复了大量的bug,并改进了部分功能。而相比于1.7.2 RC1,只修复了一个bug。值得注意的是:如果你正在使用jQuery Mobile,请使用最新的jQuery 1.7.2和jQuery Mobile 1.1这两个版本,因为之前的jQuery Mobile版本还基于jQuery core 1.7.1或更早的版本。 2012年11月14日 jQuery 1.8.3 发布,修复 bug 和性能衰退问题
IE8中的HTML相关Bug
jQuery 1.8.2在IE9中调用ajax失败的问题
jQuery 1.7.1不能正确地设置IE7中克隆元素的tabindex属性
压缩的JS文件包含非ASCII字符
如果body样式设置为display:none,则$('body').show()无法工作
在IE9中element.css('filter')返回不明确
android 2.3.4的浏览器中,jQuery 1.8.1转场效果崩溃
在iPad上缩放一个灯箱效果后,所有动画效果失效
从1.3.2升级到1.8.2版本后,出现Uncaught TypeError错误
在Chrome和Safari中,无法正确检测包含可编辑内容的DIV的焦点 2013年3月 jQuery 2.0 Beta 2 发布
据jQuery官方博客3月消息,jQuery 2.0 Beta 2 发布。
根据用户对jQuery 2.0 Beta 1 版本的反馈,Beta 2 版做了一些修改。jQuery官方表示,非常需要用户来测试 Beta 2 版,最好同时也能向他们反馈提交建议。
他们相信,Beta 2 版已非常稳定,值得一试,不需要等 2.0 的最终版本。
jQuery 团队在官博中再次提醒用户,jQuery 2.0 不再支持IE 6/7/8 了,但是 jQuery 1.9 会继续支持。因为旧版 IE 浏览器在整个互联网中还有很大部分市场,所以他们非常期望大部分网站能继续使用 jQuery 1.x 一段时间。jQuery 团队也将同时支持 jQuery 1.x 和 2.x 。1.9 和 2.0 版的 API 是相同的,所以不必因为你们网站还在用 jQuery 1.9,就感觉好像错过了什么,或者是落后了。
如果你想继续支持 IE 6/7/8,并且又想尝试 jQuery 2.0,那你可以额外加上一些代码。除了老版的 IE,其他所有浏览器都将使用第二脚本,忽略第一个。
在很多环境中,jQuery 2.0 应当都表现的很好。如下:
Google Chrome plugins
Mozilla XUL apps and Firefox extensions
Firefox OS apps
Chrome OS apps
Windows 8 Store (“Modern/Metro UI”) apps
BlackBerry 10 WebWorks apps
PhoneGap/Cordova apps
Apple UIWebView class
Microsoft WebBrowser control
Cheerio or jsdom with Node.js
Intranet applications
2013年4月18日 jQuery 2.0正式版发布 不再支持IE 6/7/8:如果在IE9/10版本中使用“兼容性视图”模式也将会受到影响。 更轻更快:2.0版本文件与1.9.1相比小了12%。 可以构建一个更小、更轻量的版本。 jQuery 2.0 API完全兼容jQuery 1.9 API。 jQuery 1.9.1汉化版2013年2月23日发布,由网友翻译非官方 2014年5月1日,jQuery2.1.1版发布

参考技术A 2006年8月,jQuery的第一个稳定版本,并且已经支持CSS选择符、事件处理和AJAX交互
2007年7月,jQuery 1.1.3版发布,这次小版本的变化包含了对jQuery选择符引擎执行速度的显著提升。
2008年5月,jQuery 1.2.6版发布,这版主要是将Brandon Aaron开发的流行的Dimensions插件的功能移植到了核心库中,同时也修改了许多BUG,而且有不少的性能得到提高。
2009年1月,jQuery 1.3版发布,它使用了全新的选择符引擎Sizzle,在各个浏览器下全面超越其他同类型JavaScript框架的查询速度,程序库的性能也因此有了极大提升。
2010年1月,也是jQuery的四周年生日,jQuery 1.4版发布,为了庆祝jQuery四周岁生日,jQuery团队特别创建了jQuery14.com站点,带来了连续14天的新版本专题介绍。
2010年2月,jQuery 1.4.2版发布,它新增了有关事件委托的两个方法:delegate()和undelegate()。
2011年1月,jQuery 1.5版发布。
2011年5月,jQuery 1.6版发布。该版本重写了Attribute模块和大量的性能改进。
2011年,11月,jQuery 1.7版发布。
总结:目前jQuery有1.x和2.x还有3.x三个主要版本,区别在于2.x移除了对古老的IE 6、7、8的支持,因此2.x的代码更精简。选择哪个版本主要取决于你是否想支持IE 6~8

jqGrid 历史和现状

jqGrid是前端用的比较多的 jquery 表格插件。

jqGrid最早由保加利亚的 Tony Tomov 创建的项目。

在 2007年,Tony 使用 jquery 重写了一个用 makoomba 开发的grid插件。

在 2007年 5月 5日,发布了1.0 beta 版本。从下图可以看到,jqgrid的开源协议是 MIT/GPL 协议。

2007年6月30日,发布 1.1 beta版本。从下图可以看出,大家最熟悉的demo演示当时还没有。

2007年8月4日,发布 2.0 正式版。

2007年10月7日,发布 3.0 候选版。3.0 版本完全重新编写了jqgrid的代码,消除了插件的影响并开始兼容更高版本的 jquery。

2008年3月7日,发布 3.0 最后预览版。

2008年3月22日,发布 3.0 正式版。

2008年4月7日,发布 3.1 版本。

2008年7月15日,发布 3.2 版本。

2008年10月10日,jqgrid 经过一年半的时间,备受jquery社区的关注,越来越多的人使用。Tony 发布了下面的声明,jqgrid 正式成为开源软件。

2008年10月14日,发布 3.3 版本。可以看出,这时候jqgrid 的开发将以团队形式进行。

2009年1月11日,发布 3.4 beta 版。

2009年1月27日,发布 3.4 beta 第二版。这个版本开始支持 jquery 1.3。

2009年2月15日,发布 3.4正式版。

2009年2月17日,发布 3.4.1 小版本。

2009年3月16日,发布 3.5 alfa 版。开始支持jquery UI 主题模版。

2009年3月1日,发布 3.5 alfa 3版本。jqgrid正式入驻 Github!

2009年8月1日,发布 3.5 正式版,jqgrid wiki正式上线。

所有的bug修改都记录在wiki中。
http://www.trirand.com/jqgridwiki/doku.php?id=wiki:change

2009年11月23日,发布3.6.1版本。

2010年5月5日,发布 3.6.5 版本。

2010年6月15日,发布 3.7 版本。

2010年7月12日,发布 3.7.2 版本。

随着 3.7.2的 发布修改和bug修复说明,Oleg 的名字第一次出现。

2010年8月2日,发布 3.8 beta 版本。 3.8支持jquery 1.4 以及一些新的特性, 3.8是一个重大升级的里程碑版本。

2010年9月21日,发布 3.8 正式版。

2010年10月24日,发布 3.8.1 正式版。

2010年12月14日,发布 3.8.2 正式版。支持 jquery 1.4.4 ,jqgrid不在依赖其他js库。

2011年4月9日,发布 4.0 正式版本。这是个重要的里程碑版本,现在在Github上可以通过tag看这个版本,这是jqGrid在Github上的第一个tag。

https://github.com/tonytomov/jqGrid/tree/v4.0.0

以上是关于jQuery的历史版本的主要内容,如果未能解决你的问题,请参考以下文章

SVN怎样对比历史版本?

jqGrid 历史和现状

Android历史版本的版本列表

ONLYOFFICE历史版本功能的开发

Maven历史版本下载

群晖drive清除历史版本