Atitit.jquery 版本号新特性attilax总结
⒉提升了事件委派时的性能有了大幅度的提升。尤其是在ie7下;
4
1. Jq1.4
jQuery 1.4 版本号的十五个新特性 - 站长之家.htm
2. 1.5
1.5新版本号
美国时间2012年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程序将自己主动获得这一功能。 wd=os&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">os
开发者借此可以使用无法马上获得的返回值(如异步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(),.pre(),.next()几个经常使用的遍历函数性能有了显著提高。
5. 内部开发系统
John Resig还特别提到了jQuery团队内部开发系统的两点改变:一是server端用Node.js替换了老的Java/Rhino系统。使得团队能够专注于JavaScript环境的新变化;二是所用的代码优化程序从Google Cl
jQuery 1.5.2 在1.5的基础上修正的大量的bug
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
3. 1.6
jQuery 1.6 正式版公布了,重写了 Attribute 模块和大量的性能改进。
新版本号中的部分重要改进:
· attr()、val()和data()方法有了更好的性能。
· 在attr()方法中支持Boolean属性;
· 加入了钩子函数,同意对attr()和val()方法进行扩展;
· map()方法加入了对对象的支持(将JavaScript对象的属性映射到函数)
· 同意使用相对值(“+=”,“-=”)更新CSS。
· 加入了deferred.always(), deferred.pipe()方法,降低了代码量。提高了代码易读性。
· 同步动画 – 如今全部动画都同步到同样的时间间隔. 使用新的浏览器功能。动画也更顺畅;
· find(),closest()和is()可接收全部的DOM元素和JQuery对象作为參数。
4. Jq1.7
同一时候,因为 jquery1.4.2 版本号公布时间比較早。基于这版本号开发的插件数量庞大。而相应版本号的开发社区相当活跃,非常多诡异的问题,网上都有相应的解决方式。
从可扩展性来分析吧。不管是 1.7.1 还是 1.4.2 留给开发扩展的方法仅仅有两个,各自是 jquery.extend 和 jquery.fn.extend ,一种是加入静态属性和方法、一种是对象加入属性和方法,扩展方式比較简单。经历了多个版本号。扩展方式都一致,因此在扩展性上面没什么可比較的。
jQuery 1.7b wd=api&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">api
2011年09月29日jQuery 1.7 的第一个 beta 測试版本号,该版本号修复了超过 50 个的问题以及带来一些新特性。
2011年11月4日jQuery1.7正式版公布。
新版本号包括了非常多新的特征。特别提升了事件委派时的性能尤其是在ie7下。
新增及改进项:
⒈新的事件
⒉提升了事件委派时的性能有了大幅度的提升,尤其是在 wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie
⒊更好的在 wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie
⒋切换动画更加直观。
⒌匿名模块定义 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或更早的版本号。
5. Jq1.8
2012年11月14日 jQuery 1.8.3 公布,修复 bug 和性能衰退问题 wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie wd=css&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">css
ie8中的html相关Bug
jQuery 1.8.2在
jQuery 1.7.1不能正确地设置ie7中克隆元素的tabindex属性
压缩的JS文件包括非ascii字符
假设body样式设置为display:none。则$('body').show()无法工作
在ie9中element.
在Android 2.3.4的浏览器中,jQuery 1.8.1转场效果崩溃
在iPad上缩放一个灯箱效果后。全部动画效果失效
从1.3.2升级到1.8.2版本号后,出现Uncaught TypeError错误
在Chrome和Safari中,无法正确检測包括可编辑内容的div的焦点
2
5.1. jQuery 1.8
5.1.1. 可定制
在jQuery 1.8中如今能够定制自己的jQuery版本号,你能够移除不须要的模块从而使得jQuery尽可能得变小。可选模块包含ajax,css。dimension,effect和offset,以下是移除所以可选模块的样例:
git clone git://github.com/jquery/jquery.git
cd jquery && npm install
grunt custom:-ajax,-css,-deprecated,-dimensions,-effects,-offset
这样将能得到一个大约21KB的jQuery。当然这个特性适用于高级的用户,你必须理解你项目中第三方插件所依赖的部分。
5.1.2. 自己主动生成CSS前缀
$.css()自己主动使用无前缀的属性名并生成适用于当前浏览器的前缀。
Web开发人员不再须要操心各种浏览器特定的属性名。比方在Chrome中
,jQuery调用$(“#myscroll”).css(“marquee-direction”,”backwards”)将设置CSS为-webkit-marquee-direction:backwards。
5.1.3. 动画
jQuery动画代码已经被整理过,并有所增强。
如今能够更简单地加入和删除动画。假设你须要支持没有内置动画的过去的浏览器,新的$.Animation提供了固定的函数。假设你仅须要支持最新的浏览器。使用它们原生支持的动画,你能够跳过整个动画模块。
5.1.4. Sizzle,选择器引擎升级
Sizzle是jQuery的CSS选择器引擎,在1.8中被大幅重写过。
由此带来了选择匹配上的性能增强,以及对经常使用选择器的快捷改善。
5.1.5. XSS保护
jQuery 1.8引入了新的$.parseHTML方法。能够以HTML形式指定输入方式。.$parseHTML提供了解析HTML为DOM片段的方式并控制脚本的运行。强烈推荐使用$.parseHTML,特别是对从非安全资源中取得的输入。
5.1.6. 全局Ajax事件的绑定
全局ajax事件,比方由$.ajax触发的ajaxStart此前能够被绑定在随意元素上,甚至是不在document中的元素。这会产生低效的使用方 式,因此该行为在jQuery 1.8中已经过期了。
而在jQuery1.9中,ajax事件将仅仅能被绑定到document上。
5.2. jQuery 1.9
jQuery 1.9预期将在2013初公布。
5.2.1. XSS保护
$()方法假设传入<script>标签能够创建HTML元素并执行脚本。
开发人员有时会忘了这点,将非安全处取得的资源传入jQuery中从 而导致了cross-site-scripting(XSS)的攻击。
在jQuery 1.9中。$()方法更严格地限制了传入规则,字符串仅仅有当首字母是“<”符号时才会被觉得是HTML。否则会被当作是CSS选择器。
5.2.2. 移除$.browser。$.sub
$.browser在jQuery 1.3中被废弃,并将在jQuery 1.9中被移除。开发人员能够换用$.support或者直接读取navigator.userAgent。
$.sub在jQuery 1.7中被废弃,相同也将在jQuery 1.9中被移除。该函数新建jQuery的副本。对它属性或方法的改动不会影响原先的jQuery对象。
但这个函数并未被证明是实用的。所以移到了1.9 的兼容插件里。这样jQuery 1.9文件的尺寸会变得更小。
6. 1.10
该版本号包括了最初在jQuery 2.0中引入的一些小的改进,并修复了1.9.1版本号中出现的bug。
除此之外。该版本号还放宽了$()中HTML处理的条件,同意出现前导空格和换行符。对于来自外部源的HTML。仍然建议使用$.parseHTML()。未来jQuery版本号将会对$(string)进行严格的限制。以避免跨站脚本攻击(XSS)。
因为1.10版本号没有什么大的变化,对于已经升级到1.9/2.0版本号的用户。能够非常easy地迁移至该版本号。假设还没有升级到这两个版本号,能够參阅jQuery 1.9升级指南,并借助 jQuery迁移插件。
7. 1.11 / 2.1 新特性
Beta 版本号的新特性包含:
· 异步模块定义 Asynchronous Module Definition (AMD)
· 通过 npm 公布
· 性能提升
· bug 修复
8. Jq2.0
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 的终于版本号。 wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie wd=api&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">api wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie
jQuery 团队在官博中再次提醒用户。jQuery 2.0 不再支持
假设你想继续支持
在非常多环境中。jQuery 2.0 应当都表现的非常好。
例如以下: wd=os&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">os wd=os&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">os wd=dom&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">dom
Google Chrome plugins
Mozilla XUL apps and Firefox extensions
Firefox
Chrome os apps
Windows 8 Store (“Modern/Metro UI”) apps
BlackBerry 10 WebWorks apps
PhoneGap/Cordova apps
Apple UIWebView class
Micr
Cheerio or 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日公布,由网友翻译非官方
这个版本号相同会在2013年初公布,紧跟在1.9的公布之后。
8.0.1. 移除对IE6/IE7/IE8的支持
jQuery 2.0将支持与jQuery 1.9同样的API,并无多大的特性添加,但会移除对IE 6/7/8的支持。
正由于支持同样的API1.9和2.0之间是能够互换的。jQuery 2.0更小,更快捷,不会有IE 6/7/8带来的问题。假设须要支持IE 6/7/8,就选择1.9。你能够通过条件凝视在使用IE 6/7/8时选择jQuery 1.9。
9. 參考
jquery两稳定版本号比較~~ - - ITeye技术站点.htm
jQuery 1.4 版本号的十五个新特性 - 站长之家.htm
jQuery 1.6 正式版公布 - 开源中国社区.htm
jQuery 1.8,1.9和2.0分别带来的新特性 - 无心的专栏 - 博客频道 - CSDN.NET.htm
jQuery 1.10 測试版公布 - Web前端 - ITeye资讯.htm
jQuery 1.11.0_2.1.0 Beta 2 新特性 _ 乐嵌网.htm