专业编程基础技术教程

网站首页 > 基础教程 正文

jQuery3.6.0发布,存在JSONP错误也返回JSON

ccvgpt 2024-11-24 12:25:14 基础教程 1 ℃

jQuery 是一个快速、小型且功能丰富的 JavaScript 库。通过易于使用的 API(可在多种浏览器中使用),使 HTML 文档的遍历和操作、事件处理、动画和 Ajax 等操作变得更加简单。结合了多功能性和可扩展性,jQuery 改变了数百万人编写 JavaScript 的方式。

jQuery 3.6.0 已正式发布,此版本不包含安全修复程序,但具有一些错误修复和改进。以下是 jQuery 3.6.0 的更新亮点:

jQuery3.6.0发布,存在JSONP错误也返回JSON

即使存在 JSONP 错误也返回 JSON

在以前的版本中,当 JSONP 请求返回错误时,返回通常仍是一个可执行脚本。3.6.0 版本已经更改了默认行为,以尝试在这种情况下执行脚本。当遇到错误时,正常的脚本仍将被跳过。

修正

一个值得强调的 bug 是关于将焦点重定向到焦点处理程序中的另一个元素。以这个例子为例,一个焦点处理程序在另一个焦点处理程序中被触发。

elem1.on(“ focus”,function(){
  elem2.trigger(“ focus”);
});

由于它们在 IE 之外的所有地方都具有同步特性,因此在 3.4.0 中添加了一个利用本地事件的修复程序,导致该本地.focus()方法在初始元素中被最后调用,从而使其失去了焦点。尽管代码继续利用本机焦点和模糊事件,但我们能够通过与本机方法进行更多的匹配并仅将最后一个焦点事件传播到 DOM tree 中来解决此问题。

其他错误修复和改进包括:修复了在 Firefox 中检索表格行的维度;修复了在已删除元素上触发焦点事件时,Chrome崩溃的问题;对某些测试进行了多项改进等。下面是完整的变更日志:

Ajax

  • 执行 JSONP 错误脚本响应 (#4771, 3bae54aa)

Core

  • 在 parseXML 报告浏览器错误 (#4784, 54d98835)
  • 恢复对 jQuery 3.x 的 QtWebKit 支持 (#4756, bf1430a7)

Deferred

  • 将 master 重命名为 primary (15b62a2e)

Dimensions

  • 修改 reliableTrDimensions 支持测试,以考虑到 FF (#4529, bcd40aa7)

Docs

  • 将 JS Foundation 提及的内容更改为 OpenJS Foundation (db43ef0b)

Event

  • 使焦点重新触发而不是将原来的元素聚焦回来 (#4382, 2fadbc0a)
  • 如果一个元素在模糊时被移除,不会崩溃 (#4417, aaf9c55a)
  • 移除 event.which shim (#3235, 2bf9793e)

Selector

  • 将 Sizzle 从 2.3.5 更新到 2.3.6 (#4782, 16548740)

Support

  • 确保支持 div 的 display 设置为block (#4844) (#4832, f8bdb127)

Tests

  • 修正没有数据类型的脚本不自动执行的测试 (7298e04f)
  • 跳过 Legacy Edge 中的 jQuery.parseXML 错误报告测试 (bf06dd47)
  • 修正 jQuery.parseXML 错误报告测试 (1ec36332)
  • 在 Node.js mock 服务器中识别带点的回调 (4c572a7f)
  • 跳过 Safari 中的 "jQuery.ajax() on unload"测试 (4f016c64)
  • 删除一个未使用的局部变量 (beea433d)
  • 删除剩余的过时 jQuery.cache 引用 (5e028c76)
  • 删除过时的 jQuery 数据测试 (8ad78cdb)

更多详情可查看:https://blog.jquery.com/2021/03/02/jquery-3-6-0-released/

Tags:

最近发表
标签列表