位置: 编程技术 - 正文

jQuery 3.0十大新特性(jquery 3.5)

编辑:rootadmin

推荐整理分享jQuery 3.0十大新特性(jquery 3.5),希望有所帮助,仅作参考,欢迎阅读内容。

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

jQuery 3.0在日前发布了最终的全新版本。从年月,jQuery团队对这个主要大版本进行维护开始,web开发者社区便一直在期待着这一刻的到来,终于在年6月他们迎来了这一个最终版。

通过jQuery 3.0的版本更新说明 ,我们看到了一个保持着向后兼容的更轻便,更快速的jQuery。在本文中,我们将介绍一些令人眼前一亮的jQuery 3.0全新特性。

开始前的说明

如果你想要下载jQuery 3.0进行亲自实验,可以通过 该页面 进行下载。另外, 升级指南 和 源代码 也值得你一看。

如果你想要测试一下你的项目如何在jQuery 3.0中工作的,你可以尝试通过jQuery迁移插件 来识别代码的兼容性问题,你也可以查看 jQuery未来发展的时间表 。

1. 移除旧的IE工作区

新的最终版最主要的目标是更加快速,更加时尚,因此,那些支持早于IE9版本的相关技术与工作区都被移除了。这意味着如果你想要或者需要支持IE6-8,你必须用回1.版本,因为甚至是2.X版本都无法完整支持早于IE9的浏览器。查看完整的浏览器支持方案>>

注意:在jQuery 3中还弃用了一些其它的功能。截止到年6月,升级指南还没有提供一个对于弃用功能的分组整理。因此,你如果想要了解弃用功能,可以通过ctrl+f键来进行搜索。

2. jQuery 3.0运行在Strict Mode下

大多数支持jQuery 3的浏览器都支持strict mode,而在本次更新中对此进行了规定。

虽然jQuery 3是写在strict mode中的,但是你需要了解的是你的代码并不需要运行在strict mode中,因此如果你想要把以前的代码迁移到jQuery 3,你不需要对已存在的jQuery代码进行重写。Strict和non-strict mode的JavaScript代码可以和谐共存。

这里有一些例外:某些版本的ASP.NET,因为strict mode的缘故,无法与jQuery 3兼容,如果你的代码涉及到了ASP.NET,你可以查看 关于strict mode的细节 。

3. 引进for...of循环

jQuery 3支持for...of 语句,这是由ECMAScript 6 中新引进的一种for循环语句。这提供了对 Arrays , Maps 和 Sets 这样的可迭代对象一种更直接的遍历方法。

在jQuery中,for...of循环可以取代以前的 $.each(...) 语法,并且更容易通过jQuery的元素 集合 进行循环。

注意:for...of只能在支持ECMAScript 6的环境下或者使用Babel这样的JavaScript编译器下工作。

4. 动画方面采用新的API

jQuery 3使用requestAnimationFrame() API来执行动画,使动画运行得更加顺畅、快速。新的API只用于支持它的浏览器,对于那些更老的浏览器(如IE9)jQuery使用先前的API来作为显示动画的后备方案。

RequestAnimationFrame已经推出一段时间了,如果你对如何使用它以及什么时候使用它感兴趣,CSS Tricks上有一篇很好的 文章 可供你阅读。

5. 对包含特殊含义的字符串提供转义的新方法

新的jQuery.escapeSelector()提供了对在CSS中存在特殊含义的字符串或字符进行转义的方法,该方法可使这些字符串或字符能够继续用于jQuery选择器中,而无需对那些无法进行正确理解的JavaScript解释器进行转义。

这个 示例 可以让你更好的了解这个全新的方法:

jQuery 3.0十大新特性(jquery 3.5)

举个例子,页面中某个ID为 “abc.def” 的元素由于选择器将其解析为 ID为“abc”且包含一个名为“def”的类的对象, 而无法被$( "#abc.def" )选定。但是它可以由 $( "#" + $.escapeSelector( "abc.def" ) )来进行选定。

我无法确定发生中情况的频率,但是假如你碰到过这种类似的情况,这无疑给了你一个解决该问题的简单方法。

6. 类操作方法支持SVG

不幸的是,jQuery 3现在还无法完整的支持SVG,但是对于 操作CSS类名称 的jQuery方法,如 .addClass() 和 .hasClass() 现在可以将SVG文档作为目标。这意味着你可以修改(添加、删除、切换)或者查找SVG(可缩放矢量图形)下的jQuery类,然后使用CSS的类样式。( 相关阅读:Styling Scalable Vector Graphic (SVG) with CSS )

7. 延迟对象现在与JS Promises兼容

JavaScript Promises ,用于异步计算的对象,现在在ECMAScript 6中已经被标准化;它们的运行状况和特性的详细说明参见 Promises/A+ 标准。

在jQuery 3中, 延迟对象 已经与新的Promises/A+标准相兼容,延迟对象已经成为让创建回调队列成为可能的可链对象(chainable objects)。

新的特性改变了异步回调函数执行过程,Promises允许开发者编写在逻辑上与同步代码更接近的异步代码。

查看升级指南的 代码示例 ,或者查看关于JavaScript Promises基础的 Scotch.io教程 可以让你了解更多的信息。

8. jQuery.when()对于多种参数的不同解读

$.when() 提供了执行回调函数的一种方法,它成为了jQuery 1.5之后的一部分。这个方法非常灵活,它适用于零参数,也适用于一个或者多个作为参数的对象。

jQuery 3改变了当包含 $.then() 方法时对$.when()中参数的解读方法,你可以对$.when()进行额外的参数回调。

在jQuery 3中,如果你在$.when()中的then()方法内增加一个输入参数,该参数将会被解释成一个可与 Promise 兼容的 "thenable" 。

这意味着 $.when方法能够接收更加宽广的输入范围,比如原生的 ES6 Promises 和 Bluebird Promises ,这也使得编写更复杂的异步回调成为了可能。

9. 新的显示/隐藏逻辑

为了增加响应式设计的兼容性,与元素显示和隐藏的代码在jQuery 3中进行了更新。

从现在开始, .show() 、 .hide() 和 .toggle() 方法将会以内联样式为重点取代以前的计算样式,这种方式能够更尊重样式列表的改变。

新的代码尽可能的尊重样式列表中所呈现的数值,这意味着CSS规则可根据事件(如设备重新定位和窗口尺寸调整)进行动态改变。

这个说明文件申明了最重要的结果就是:

“作为结果,断开连接的元素除非指定了内联display: none,否则将不再认定为是隐藏的。因此,在jQuery 3.0中,.toggle()不再对断开连接元素与已连接元素进行区分。”

如果你想要更好的了解关于全新的显示/隐藏逻辑,这个 Github discussion 会对你有帮助。jQuery开发者还发布了 Google文档表 来展示在不同用例下新规则的运转。

. 对于防止XSS攻击的额外保护

jQuery 3增加一个额外的安全层用户用于防备跨站点脚本(XSS)攻击,它需要开发者指定 $.ajax() 和 $.get() 方法中的选项为dataType: "script"。

换言之,如果你想要执行跨站点的脚本请求,你必须在这些方法中作出这样的声明。

新的改变对于当“远程站点传递非脚本内容之后又提供有恶意脚本的服务内容”的情况是非常有效的。这个变化不会影响$.getScript()方法,因为它明确地设置了dataType: "script"选项。

以上所述是小编给大家介绍的jQuery 3.0十大新特性的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

Spring MVC中Ajax实现二级联动的简单实例 今天写项目遇到了二级联动,期间遇到点问题,写个博客记录一下。后台Controller:@RequestMapping("/faultType")@ResponseBodypublicMapString,ObjectfaultType(intid,HttpServlet

jQuery插件dataTables添加序号列的方法 官网方法实例:$(document).ready(function(){vart=$('#example').DataTable({"columnDefs":[{"searchable":false,"orderable":false,"targets":0}],"order":[[1,'asc']]});t.on('order.dtsearch.dt',functio

移动端 一个简单易懂的弹出框 先给大家展示下效果图,如果大家感觉还不错,请继续参考实现代码。关键代码如下所示:functiontishi(content,url){varhtml='divclass="xiaoxinone"id="msg"style="z-index:

标签: jquery 3.5

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

上一篇:jQuery获取浏览器类型和版本号的方法(jquery获取浏览器宽度)

下一篇:Spring MVC中Ajax实现二级联动的简单实例(spring mvc jsp)

  • 房屋用途 居住用房 住宅 区别
  • 增值税专用发票抵扣期限
  • 税金及附加期初余额在哪一方
  • 物流企业信用评级
  • 股息交个人所得税怎么交
  • 公司代扣代缴个税完税凭证在哪里可以打印
  • 营改增后不动产销售增值税 5%还是9%
  • 公司外来人员进入公司
  • 购买日子公司账面价值调整为公允价值
  • 企业采购一般应包括什么
  • 公司购入房产账务处理
  • 计提的增值税比例怎么算
  • 建筑业3%人工费可以开专票吗?
  • 销售方开具的红字信息表
  • 给研发人员福利怎么做账
  • 工会财务总结报告
  • 专家费收取多少合适
  • 公益性捐赠包括向脱贫地区捐赠吗
  • deepin启动延时
  • 增值税发票和进项发票什么意思
  • 台式电脑开不了机怎么办 屏幕黑屏
  • cpu主频在哪看
  • PHP CURL CURLOPT参数说明(curl_setopt)
  • autorun.exe
  • 福利企业退税计入哪个科目
  • 新用户注册表单代码
  • 偿还不了债务会怎么样
  • 为什么要把收入当成舞弊假定
  • 得了遗尿症应该怎么办
  • php数据迁移
  • 股权转让怎么做帐务处理
  • 房产土地税计提新规
  • php最安全的登录功能
  • 怎么配置tomcat服务器
  • yolov3多分类检测
  • bom也称为
  • 命令行改gpt
  • 增值税发票开票系统数据与实际报税数不一致的原因?
  • 新设立的企业如何办理开业税务登记
  • 给境外公司代扣代缴税款
  • python模块的搜索路径
  • 企业发生的直接进入当期损益的期间费用包括
  • 企业哪些增值税免征
  • 营业税改增值税时间
  • 应收款项减值讲解视频
  • 查补以前年度增值税怎么申报
  • 委外研发费用如何入账
  • 城投公司政府购买服务
  • 银行代扣出口快递费用
  • 利息收入和利息费用是一个科目吗
  • 所得税汇算清缴前取得跨年发票
  • mysql 加锁处理分析
  • mysql 300万条数据
  • xp安装声卡驱动
  • u启动怎么装机
  • windows8怎么设置
  • msmpeng.exe是什么进程
  • win10专业版注册表在哪里
  • 笔记本摄像头摄像
  • 在win7系统中如何用快捷键复制文件或文件夹
  • 组策略禁用u盘怎么打开
  • linuxftp服务器
  • win8如何免费升级win10
  • OpenGL Tips: 在Visual C++中调用FreeGLUT
  • django 不同app间model引用
  • perl -pi
  • axios使用jsonp
  • window.onerror()的用法与实例分析
  • JavaScript Math.ceil 方法(对数值向上取整)
  • 安卓开源组件
  • doctype报错
  • 基于javascript创建导航页面
  • 宁波镇海哪里可以赶海
  • 内蒙古自治区耕地保养条例
  • 各国进口汽车综合税率表
  • 合伙企业的税收较高
  • 证券经纪人收入构成
  • 天津市税务机关代码
  • 福建广电网上营业厅下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设