jQuery3.0的新特性详解

HTML5 herman 2138浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog,发送下载链接帮助你免费下载!
本博客日IP超过1800,PV 2600 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog,之前的微信号好友位已满,备注:返现
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领

jQuery是继prototype之后又一个优秀的Javascript库。它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器。人们对jQuery的依赖程度,远远超乎大家的想象。我们在做一个新项目时,往往一行代码还没写,jQuery就被添加进来了。现在的Web前端开发,不会jQuery的估计是零存在。

jQuery自从发布后,深受大家的喜爱。后来0.x版本,1.x版本,2.x版本,相继推出,功能不断增加的同时,也放弃了对部分浏览器的支持。2014年jQuery迎来了自己的3.x版本。
jQuery API 3.0版本主要包含以下内容:
如果你要兼容更广泛的浏览器,包括IE8,Opera 12,Safari 5等,使用jQuery-Compat 3.0.0包。我们推荐大多数站点使用这个版本,因为它为最多的网站访问者提供了最佳的兼容性。
如果你的网站是专为领先的浏览器搭建的,或者是一个webview(例如PhoneGap或Cordova)容器中的HTML应用,并且你知道哪些浏览器引擎会使用它,那就使用jQuery 3.0.0包。
除非我们宣布,否则,在相同的主次版本中这两个包将包含相似的公众API。这样开发者可以很容易在它们之间切换,并且会保持与第三方jQuery插件最大的兼容性。
此外, 3.0还增加了对 Yandex 浏览器的支持,一款来自俄罗斯的浏览器。

1、show/hide
    之前的show/hide是大兼容,比如show, 无论元素的display是写在style,stylesheet里都能显示出来。3.0则不同了,写在stylesheet里的display:none调用 show 后仍然隐藏。 3.0建议采用class方式去显示隐藏,或者完全采用hide先隐藏(不使用css代码),再调用show也可以。
2、data方法加强
    jQuery 3.0 中的 Data 是内部使用的,定义为一个“类”。一共用它创建了两个对象,dataPriv 和 dataUser。Data 有 1 个对象属性(expando)和类属性(uid),有 6 个方法,如下
    jQuery Data
    例如:input id="xttblog" type="text" value="" data-name-11="aa" /> 3.0 版本 输出 {"name-11": aa}, 之前版本输出 {}
3、derferred兼容了Promise/A+
    3.0终于可以自信的宣告支持Promise/A 了,之前一直被诟病是阉割版的。
4、$.ajax 对象删除了success|error|complete 方法
    这是因为Promise/A规范的推动,大家对Promise的使用越来越多,之前对应Derferred上的几个方法没有存在的必要了
5、width/height,css(width)/css(height) 的返回值一律是十进制
    之前部分浏览器特殊情况下返回浮点数。
6、 移除了注册事件的快捷函数load|unload|error
    load名称和ajax load同名,含糊不清。
    unload如果load去掉, unload也没有存在的意义了。
    error采用window.onerror注册,不是一个标准事件hander,因此也建议移除
7、动画模块使用 “requestAnimationFrame” 替代setTimeout
    requestAnimationFrame IE9及android4.4以下仍然不支持,但其它浏览器则明显提升性能
版权声明:本文为博主原创文章,未经博主允许不得转载。

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加QQ1群:135430763(2000人群已满),QQ2群:454796847(已满),QQ3群:187424846(已满)。QQ群进群密码:xttblog,想加微信群的朋友,之前的微信号好友已满,请加博主新的微信号:xttblog,备注:“xttblog”,添加博主微信拉你进群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作可添加助理微信进行沟通!

本文原文出处:业余草: » jQuery3.0的新特性详解