Atitit.jquery 版本号新特性attilax总结

1. Jq1.4 1

2. 1.5 1

3. 1.6 3

4. Jq1.7 3

⒉提升了事件委派时的性能有了大幅度的提升。尤其是在ie7下;
4

⒊更好的在 ie 6/7/8 上支持 html5;
4

⒋切换动画更加直观。
4

⒌匿名模块定义 awd
4

⒍jQuery.Deferred 4

⒎jQuery.isNumeric() 4

5. Jq1.8 5

5.1. jQuery 1.8 5

5.1.1. 可定制 5

5.1.2. 自己主动生成CSS前缀
5

5.1.3. 动画 6

5.1.4. Sizzle。选择器引擎升级
6

5.1.5. XSS保护
6

5.1.6. 全局Ajax事件的绑定
6

5.2. jQuery 1.9 6

5.2.1. XSS保护
6

5.2.2. 移除$.browser,$.sub
7

6. 1.10 7

7. 1.11 / 2.1 新特性 7

8. Jq2.0 8

8.1.1. 移除对IE6/IE7/IE8的支持
8

9. 參考 9

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程序将自己主动获得这一功能。

开发者借此可以使用无法马上获得的返回值(如异步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

wd=os&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">osure切换到UglifyJS,新工具的压缩效果很令人惬意。

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

2011年09月29日jQuery 1.7 的第一个 beta 測试版本号,该版本号修复了超过 50 个的问题以及带来一些新特性。

2011年11月4日jQuery1.7正式版公布。

新版本号包括了非常多新的特征。特别提升了事件委派时的性能尤其是在ie7下。

新增及改进项:

⒈新的事件 

wd=api&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">apis: .on() and .off();

⒉提升了事件委派时的性能有了大幅度的提升,尤其是在

wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie7下;

⒊更好的在 

wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">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或更早的版本号。

5. Jq1.8

2012年11月14日 jQuery 1.8.3 公布,修复 bug 和性能衰退问题

ie8中的html相关Bug

jQuery 1.8.2在

wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie9中调用ajax失败的问题

jQuery 1.7.1不能正确地设置ie7中克隆元素的tabindex属性

压缩的JS文件包括非ascii字符

假设body样式设置为display:none。则$('body').show()无法工作

ie9中element.

wd=css&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">css('filter')返回不明白

在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 的终于版本号。

jQuery 团队在官博中再次提醒用户。jQuery 2.0 不再支持

wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie 6/7/8 了,可是 jQuery 1.9 会继续支持。由于旧版 

wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie 浏览器在整个互联网中还有非常大部分市场。所以他们非常期望大部分站点能继续使用 jQuery 1.x 一段时间。jQuery 团队也将同一时候支持 jQuery 1.x 和 2.x 。1.9 和 2.0 版的 

wd=api&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">api 是同样的,所以不必由于你们站点还在用 jQuery 1.9。就感觉好像错过了什么,或者是落后了。

假设你想继续支持 

wd=ie&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">ie 6/7/8。而且又想尝试 jQuery 2.0,那你能够额外加上一些代码。除了老版的 ie,其它全部浏览器都将使用第二脚本。忽略第一个。

在非常多环境中。jQuery 2.0 应当都表现的非常好。

例如以下:

Google Chrome plugins

Mozilla XUL apps and Firefox extensions

Firefox 

wd=os&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">os apps

Chrome os apps

Windows 8 Store (“Modern/Metro UI”) apps

BlackBerry 10 WebWorks apps

PhoneGap/Cordova apps

Apple UIWebView class

Micr

wd=os&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">osoft WebBrowser control

Cheerio or js

wd=dom&tn=baidu&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00IAYq0AP8IA3qmh7GuZR0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1D1PWR4PWm1rj64rjf1P1DznHb">dom 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日公布,由网友翻译非官方

这个版本号相同会在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

Atitit.jquery 版本号新特性attilax总结的更多相关文章

  1. Atitit.jquery 版本新特性attilax总结

    Atitit.jquery 版本新特性attilax总结 1. Jq1.4 1 2. 1.5 1 3. 1.6 3 4. Jq1.7 3 ⒉提升了事件委派时的性能有了大幅度的提升,尤其是在ie7下: ...

  2. Atitit opencv版本新特性attilax总结

    Atitit opencv版本新特性attilax总结 1.1. :OpenCV 3.0 发布,史上功能最全,速度最快的版1 1.2. 应用领域2 1.3. OPENCV2.4.3改进 2.4.2就有 ...

  3. Atitit html5.1 新特性attilax总结

    Atitit html5.1 新特性attilax总结 9. 嵌入 header 和 footer1 7. 校验表单1 6. 浏览器的上下文菜单2 1. 响应式图像2 Attilax觉得还不错的心特性 ...

  4. atitit.atiLinq v2新特性attilax大总结 q326

    atitit.atiLinq v2新特性attilax大总结 q326 1. V3规划 (分开sql2obj sql2sql sql2xml)1 2. V2新特性 Url linq的定义1 3. V1 ...

  5. atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结

    atitit.Windows Server 2003  2008  2012系统的新特性 attilax 总结 1. Windows Server 2008 新特性也可以归纳为4个方面. 1 2. 相 ...

  6. Atitit mac os 版本 新特性 attilax大总结

    Atitit mac os 版本 新特性 attilax大总结 1. Macos概述1 2. 早期2 2.1. Macintosh OS (系统 1.0)  1984年2 2.2. Mac OS 7. ...

  7. Atitit hibernate3 hinernate4 hibernate5新特性attilax总结

    Atitit hibernate3 hinernate4 hibernate5新特性attilax总结 1.1. Hibernate3的新特性 1 1.2. hibernate4.1版本中的新特性和h ...

  8. Atitit js es5 es6新特性 attilax总结

    Atitit js es5 es6新特性 attilax总结 1.1. JavaScript发展时间轴:1 1.2. 以下是ES6排名前十的最佳特性列表(排名不分先后):1 1.3. Es6 支持情况 ...

  9. Atitit mybatis 3 3.2 3.3  3.4 新特性attilax总结

    Atitit mybatis 3 3.2 3.3  3.4 新特性attilax总结 1.1. iBATIS 3 内的新特性.html1 1.2. MyBatis团队于2013年2月21日正式发布 M ...

随机推荐

  1. JVM --java 字节码的结构解析

    Java字节码文件的主体结构分为一下几个部分:Class文件头部.常量池区域.当前类的描述信息.字段列表.方法列表.属性列表. Class文件头部 任何的class文件的前四个字节的内容就是CA FE ...

  2. SFTP上传下载(C#)

    sftp是ftp协议的升级版本,是牺牲上传速度为代价,换取安全性能,本人开始尝试使用Tamir.SharpSSH.dll但它对新版本的openssh 不支持,所有采用Ssh.Net方式 需要依赖:Re ...

  3. Android项目实战手机安全卫士(01)

    目录 项目结构图 源代码 运行结果 项目结构图 源代码 SplashActivity.java package com.coderdream.mobilesafe.activity; import a ...

  4. 关于UIText换行

    话不多说,直接上代码 --代码是lua的,c++也一样 local text = ccui.Text:create("text can line wrap text can line wra ...

  5. 利用opencv中的级联分类器进行人脸检測-opencv学习(1)

    OpenCV支持的目标检測的方法是利用样本的Haar特征进行的分类器训练,得到的级联boosted分类器(Cascade Classification).注意,新版本号的C++接口除了Haar特征以外 ...

  6. GCC 编译使用动态链接库和静态链接库的方法

    1 库的分类 依据链接时期的不同,库又有静态库和动态库之分. 静态库是在链接阶段被链接的.所以生成的可执行文件就不受库的影响了.即使库被删除了,程序依旧能够成功执行. 有别于静态库,动态库的链接是在程 ...

  7. android中关于ListView的卡位说明

    需求:做项目的时候,需要将ListView的header的一个Tab卡位,即listView滑动后,Header的某一个部分可以定在ListView的顶端卡住. 解决的方案:监听ListView的滑动 ...

  8. android studio之argument for @notnull parameter 'name'

    1)进入刚安装的Android Studio目录下的bin目录.找到idea.properties文件,用文本编辑器打开.2)在idea.properties文件末尾添加一行: disable.and ...

  9. UVA 10718 Bit Mask 贪心+位运算

    题意:给出一个数N,下限L上限U,在[L,U]里面找一个整数,使得N|M最大,且让M最小. 很明显用贪心,用位运算搞了半天,样例过了后还是WA,没考虑清楚... 然后网上翻到了一个人家位运算一句话解决 ...

  10. MsSqlServer bak文件数据导入

    MsSqlServer  bak文件数据导入 第一步首先在你的数据库中建立一个空数据库 选中新建的数据库 鼠标右键 任务 还原 数据库 这个时候会弹出这种一个框 之后选择原设备 会弹出 点击加入 找到 ...