位置: 编程技术 - 正文

jQuery 3.0 的变化及使用方法(jquery1.12.4)

编辑:rootadmin

推荐整理分享jQuery 3.0 的变化及使用方法(jquery1.12.4),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:jquery 4.0,jquery3.6,jquery1.12.3,jquery3.3.1,jquery3.6,jquery3.6,jquery3.3.1,jquery 3.5,内容如对您有帮助,希望把文章链接给更多的朋友!

jQuery ,是迄今为止世界上最流行的 JavaScript 库,一直是我们这些 Web 开发者的神器。自从它在 年发布最初版本直到如今,已经有非常多的 Web 开发者在项目中引入了这个优秀的库来使开发工作变得更轻松。

时隔 3 个月,jQuery 团队终于发布了 3.0 Alpha 版本。有两个版本 jQuery compat 3.0 和 jQuery 3.0。

&#;jQuery compat 3.0 对应之前的 1.x, 兼容更多的浏览器,对于IE支持到 8.0 版本&#;jQuery 3.0 对应之前的 2.x,关注更新的浏览器,对于IE支持到 9.0 版本

此外, 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 方法兼容 data-name- 写法

这个问题本质是$.camelCase方法的实现差异

3、derferred 兼容了 Promise/A+

3.0 终于可以自信的宣告支持 Promise/A 了,之前一直被诟病是阉割版的。

4、$.ajax 对象删除了 success | error | complete 方法

这是因为 Promise/A 规范的推动,大家对 Promise 的使用越来越多,之前对应 Derferred 上的几个方法没有存在的必要了

&#;derferred.done -> jqXHR.success&#;derferred.fail -> jqXHR.error&#;derrerred.always -> jqXHR.complete

5、width/height,css(width) / css(height) 的返回值一律是十进制

之前部分浏览器特殊情况下返回浮点数。

6、 移除了注册事件的快捷函数 load | unload | error

&#;load 名称和 ajax load 同名, 含糊不清。&#;unload 如果 load 去掉, unload 也没有存在的意义了。&#;error 采用 window.onerror 注册,不是一个标准事件 hander,因此也建议移除

以上内容给大家总结了jquery3.0的变化,下面主要给大家介绍jquery3.0更新内容及使用方法。

显示和隐藏

主要的改变是函数将如何工作的。而且有很好的理由这样做。在早些实现上,hide() 函数设置 css 属性为“display:none”,show() 函数是清除这个属性。但是这样做有些混乱。让我们看看几个例子:

1. 如果当 show() 函数尝试设置一个节点为“display:block”而在另外一个样式表里实现了“display:inline”属性,这将开始破坏代码。

2. 当我们为媒质处理响应式网页设计时(RWD),我们也许会用“display”或者“visibility”改变节点的可见性。这可能会影响“show()”和“hide()”函数。

除了这些,还有很多 JQuery 团队不得不去修复的其它问题。这导致了复杂的实现和性能问题,因此他们迁移到一个简单的模型。

今后,如果你设置“display:none”和使用“show()”,“slideDown()”,“fadeIn()”或者类似的方法去显示节点,它不会有效。更好的方法是使用“addClass()”和“removeClass()”控制显示。或者可以在“ready()”调用的时候在元素上调用“hide()”。

迅速举个例子:

.data() Key 的命名规则

jQuery 团队改变了 .data() 函数的实现来更符合 HTML5 数据集规范。如果 data-* 属性中的 key 包含了数字,该数字将不再参与转换。思考下面的例子:

使用 jQuery 2.1.4:

jQuery 3.0 的变化及使用方法(jquery1.12.4)

控制台窗口不显示对象。

使用 jQuery 3.0.0:

由于现在数字不会参与转换为骆驼拼写法,key 被转换成了 foo--name。因此,我们得到了控制台中的输出。这个 fiddle 的网址是 。你可以更改 jQuery 的版本来观察变化。

同样,如果我们想要不带任何参数地使用 data() 显示所有的数据,如果 data-* 属性的 key 名在连字符(-)后面接了一个数字,则参数的数量也将会在两个 jQuery 版本中改变,就像上面的例子一样。

width() 与 height() 函数返回小数值

一些浏览 器会将宽度和高度返回为亚像素值。现在无论浏览器是否支持, jQuery 的 .width()、.height()、.css("width") 都可以返回小数值了。对于为了使用 亚像素精度来 设计网页的用户来说,这可能 会是一个好消息。

.load()、.unload()、及 .error() 函数被移除

这些方法早先已经不赞成使用了,现在则已经从 jQuery 3.0.0 alpha 版中被移除。推荐的方法是使用 .on() 函数来处理这些事件。简短示例:

HTML:

JavaScript:

早先的实现方式(现已不可用)

推荐的实现方式:

jQuery 对象现在可遍历了

现在已经可以遍历 jQuery 对象了,使用 ES 的 for-of。所以,你可以像这样使用:

jQuery 动画现在在后端使用了 requestAnimationFrame API

所有现代的浏览器都已经支持了 requestAnimationFrame(参见: )了。由于其被普遍支持,jQuery 将会使用此 API 来执行动画。其优势包括更流畅的动画及更少的 CPU 占用(因此,可以在手机上节约电量)。

增强 .unwrap() 函数

.unwrap() 函数可以让你在 DOM 中删除指定元素的父元素,早先不能接收参数。如果有人想给 unwrap 设定一个条件,这可能是个问题。

在 jQuery 3.0.0 alpha 中,.unwrap() 可以接收 jQuery 选择器做为参数来处理这个问题。

jQuery.Deferred 升级为 Promises/A+ 兼容

Promiseis是一个异步操作的最终结果——它是一个对象,承诺在未来交付结果。 和promise接口的最主要方式是then方法, 它注册了回调函数。现在,在JavaScript中使用Promise来完成异步工作变得日益流行。Promises/A+是一个兼容JavaScript promises的开放标准。 (想要更多的信息,可以查看链接: )

从jQuery的参考文档中,Deferred对象是一个由jQuery.Deferred()方法创建的可链接实用对象。它可以注册多个回调函数放入回调函数队列中、调度这个队列、更新任何同步或异步方法的成功和失败状态。在jquery 3.0.0中,jQuery.Deferred对象升级成与Promises/A+和ES Promises兼容。 这就是.then()方法的主要变更。

更好地处理错误情况

这个版本的 jQuery 能更好地处理错误 —— 错误请求过去一直是被忽略的,直到现在的版本才会抛出错误。

举例来说:考虑到 offset,要获取当前第一个元素的坐标,相对于文档来说,就要匹配集合中的元素。如果你正试图在 jQuery 的早期版本找到抵消的窗口(window),你会得到{top: 0, left: 0}这样的结果,而不是抛出一个错误,这是因为抵消窗口(window)是无意义的。而在 3.0 alpha 版本中,它就会抛出一个错误。

另外一个例子:$("#") 现在会抛出一个错误,而不是返回一个长度为 0 的集合。

对自定义选择器(如 :visible ) 进行了加速

当 :visible 之类的选择器在一个文档内多次使用时,性能得到了很大的提升。其内部是通过缓存来实现的 —— 第一次用过这个选择器后,以后返回结果都是一样的。但是其后的每一次调用返回结果都很快,因为缓存起作用了。来自 jQuery 的 Timmy Willison 在 报告 中指出使用缓存后 :visible 选择器的性能提升了 倍。

这些都是一些主要的更新。整个列表在他们的官方博客: .

在哪里下载最新版本

有两个版本:

jQuery 3.0,其支持了现代浏览器: Compat 3.0,其包含了对 IE8 的支持: npm 中获取:

基于jQuery实现二级下拉菜单效果 本文通过代码实例详细介绍一下简单的二级下拉菜单是如何实现的,当然还有更为复杂的二级菜单,不过先学会如何制作简单的,分享给大家供大家参

基于jquery实现下拉框美化特效 平常我们用的原生select下拉框,大部分样式没办法修改,导致在不同的浏览器里面会跟设计图的风格大相径庭。所以为了能让它美化起来,就用JQ模拟了

多种JQuery循环滚动文字图片效果代码 自己模仿JQ插件的写法写了一个循环滚动列表插件,支持自定义上、下、左、右四个方向,支持平滑滚动或者间断滚动两种方式,都是通过参数设置。JQ

标签: jquery1.12.4

本文链接地址:https://www.jiuchutong.com/biancheng/381952.html 转载请保留说明!

上一篇:jQuery与Ajax以及序列化

下一篇:基于jQuery实现二级下拉菜单效果(使用jquery)

  • 增值税抵扣了还能作废吗
  • 税后经营净利率什么意思
  • 个人所得税减除费用6万元什么意思
  • 有税控盘怎么领发票
  • 二类经适房转商品房需要交多少钱
  • 购进蔬菜的进项税额
  • 房产折旧计算方法 举例
  • 企业提供建筑服务,应向建筑服务发生地
  • 结存材料物资会计分录怎么做?
  • 报表中应交税金和应交税费区别
  • 公司和员工之间
  • 收到报废车款要交什么税
  • 银行手续费要纳进去吗
  • 免税企业可以开具有税率的增值税专用发票吗
  • 所得税申报错了扣款了怎么办
  • 背书出去的票据信息在哪里查询
  • 房租发票税金谁承担
  • 存货跌价准备的金额
  • 购买承兑汇票怎么做账
  • 电脑黑屏怎么办主机还是亮的
  • 支付项目工程款可以借流贷吗
  • 银行承兑汇票背书会计分录
  • 财政补助收入的账务处理
  • 对公帐户定期存款利率
  • 2015年4月4日摄于Tear Drop Arch附近的月全食,犹他州纪念碑谷 (© Alan Dyer/Alamy)
  • 物流中的代收货款是什么意思
  • 违约金赔偿款怎么开票
  • 出售长期股权投资的交易费用
  • 计算机视觉opencv 有什么项目
  • ps怎么把皮肤变红润
  • 取得农产品免税发票如何账务处理
  • 跨年度的利息收入怎么做账
  • 织梦官方网站
  • 固定资产清理怎么报税呢
  • mongodb使用案例
  • 本月的费用
  • 临时聘用人员管理办法
  • 教育培训学校是什么意思
  • 产品淘汰造成的影响
  • 个体工商户增值税申报操作流程
  • 新公司第一年年度总结
  • 以前年度费用退回
  • 个体户是什么概念
  • 金蝶低值易耗品报废操作
  • 市政建设配套费 契税
  • 增值税期末留抵退税原因采集确认单
  • 员工出差报销的餐费怎么下账
  • 同一控股下并合并的股票
  • 安全生产费会计准则
  • 以前年度损益科目类别怎么填
  • 企业办公楼房产税如何征收
  • 营业外支出包括
  • 车费属于什么会计科目类
  • 固定总价合同与epc总承包合同区别
  • 公司基本账户如何开户
  • 运输过程发生的合理损耗计入成本吗
  • 发票盖发票专用章
  • 什么样的原始凭证不能用
  • sql server 2019自定义安装教程
  • sun solaris 8何启用telnet ftp 功能
  • 键盘和鼠标冲突
  • linux grub2
  • 找回丢失的抖音如何恢复抖音
  • windows8开机蓝屏
  • centos7.4升级7.5
  • excel 工具栏
  • 开快打开
  • linux怎样过滤一个关键字
  • js写贪吃蛇什么水平
  • nodejs截图
  • css div 不换行
  • vue js组件
  • 结合mint-ui移动端下拉加载实践方法总结
  • unity的text
  • jquery对象与dom对象可以相互转换
  • 工会经费怎么缴纳不了
  • 办理供票资格申请
  • 金税盘读取发票
  • 国税局地点
  • 浙江省地方税务局通用定额发票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设