出品
开源中国
文
Travis
jQuery是一个快速、小型且功能丰富的JavaScript库。通过易于使用的API(可在多种浏览器中使用),使HTML文档的遍历和操作、事件处理、动画和Ajax等操作变得更加简单。结合了多功能性和可扩展性,jQuery改变了数百万人编写JavaScript的方式。
jQuery3.6.0已正式发布,此版本不包含安全修复程序,但具有一些错误修复和改进。以下是jQuery3.6.0的更新亮点:
即使存在JSONP错误也返回JSON
在以前的版本中,当JSONP请求返回错误时,返回通常仍是一个可执行脚本。3.6.0版本已经更改了默认行为,以尝试在这种情况下执行脚本。当遇到错误时,正常的脚本仍将被跳过。
修正
一个值得强调的bug是关于将焦点重定向到焦点处理程序中的另一个元素。以这个例子为例,一个焦点处理程序在另一个焦点处理程序中被触发。
elem1.on(“focus”,function(){elem2.trigger(“focus”);});
由于它们在IE之外的所有地方都具有同步特性,因此在3.4.0中添加了一个利用本地事件的修复程序,导致该本地.focus()方法在初始元素中被 调用,从而使其失去了焦点。尽管代码继续利用本机焦点和模糊事件,但我们能够通过与本机方法进行更多的匹配并仅将 一个焦点事件传播到DOMtree中来解决此问题。
其他错误修复和改进包括:修复了在Firefox中检索表格行的维度;修复了在已删除元素上触发焦点事件时,Chrome崩溃的问题;对某些测试进行了多项改进等。下面是完整的变更日志:
Ajax
执行JSONP错误脚本响应(#,3bae54aa)Core
在parseXML报告浏览器错误(#,54d)恢复对jQuery3.x的QtWebKit支持(#,bfa7)Deferred
将master重命名为primary(15b62a2e)Dimensions
修改reliableTrDimensions支持测试,以考虑到FF(#,bcd40aa7)Docs
将JSFoundation提及的内容更改为OpenJSFoundation(db43ef0b)Event
使焦点重新触发而不是将原来的元素聚焦回来(#,2fadbc0a)如果一个元素在模糊时被移除,不会崩溃(#,aaf9c55a)移除event.whichshim(#,2bfe)Selector
将Sizzle从2.3.5更新到2.3.6(#,)Support
确保支持div的display设置为block(#)(#,f8bdb)Tests
修正没有数据类型的脚本不自动执行的测试(e04f)跳过LegacyEdge中的jQuery.parseXML错误报告测试(bf06dd47)修正jQuery.parseXML错误报告测试(1ec)在Node.jsmock服务器中识别带点的回调(4ca7f)跳过Safari中的jQuery.ajax()onunload测试(4fc64)删除一个未使用的局部变量(beead)删除剩余的过时jQuery.cache引用(5ec76)删除过时的jQuery数据测试(8ad78cdb)