LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

jQuery 4.0.0 发布,时隔约 10 年的主要版本发布!

admin
2026年1月19日 11:37 本文热度 68

概述

2006 年 1 月 14 日,John Resig 在纽约市的 BarCamp 上介绍了名为 jQuery 的 JavaScript 库。现在,20 年后,jQuery 团队很高兴地宣布 jQuery 4.0.0 的最终版本发布。经过漫长的开发周期和几个预发布版本,jQuery 4.0.0 带来了许多改进和现代化。这是近 10 年来第一个主要版本发布,包括一些破坏性变更,因此在升级前请务必仔细阅读下面的细节。尽管如此,我们预计大多数用户只需进行少量代码更改即可升级。

许多破坏性变更是团队多年来一直想做的,但无法在补丁或次要版本中实现。我们删除了遗留代码,移除了之前已弃用的 API,删除了公共函数中从未文档化的内部参数,并放弃了一些过于复杂的“魔术”行为。

我们准备了 升级指南 和 jQuery Migrate 插件发布 来协助过渡。请升级并 如果遇到任何问题,请告知我们。

与往常一样,此版本可在 我们的 CDN 和 npm 包管理器上获取。其他第三方 CDN 可能很快也会提供,但请记住我们不控制他们的发布计划,他们需要一些时间。下面是 jQuery 4.0.0 的亮点。

移除 IE<11 支持

jQuery 4.0 放弃了对 IE 10 及更早版本的支持。有些人可能会问为什么我们没有移除对 IE 11 的支持。我们计划分阶段移除支持,下一步 将在 jQuery 5.0 中发布。目前,我们将从移除专门支持 IE 11 之前版本的代码开始。

我们还放弃了对其他非常旧浏览器的支持,包括 Edge Legacy、iOS 最后 3 个版本之前的版本、Firefox 最后 2 个版本之前的版本(除了 Firefox ESR)和 Android Browser。您无需进行任何更改。如果您需要支持这些浏览器,请坚持使用 jQuery 3.x。

Trusted Types 和 CSP

jQuery 4.0 添加了对 Trusted Types 的支持,确保包裹在 TrustedHTML 中的 HTML 可以作为输入用于 jQuery 操作方法,而不会违反 require-trusted-types-for 内容安全策略指令。

与此同时,虽然一些 AJAX 请求已经使用 <script> 标签来维护如 crossdomain 等属性,但我们 已将大多数异步脚本请求切换为使用 <script> 标签,以避免因使用内联脚本而导致的任何 CSP 错误。还有一些情况下使用 XHR 进行异步脚本请求,例如传递 "headers" 选项时(请改用 scriptAttrs!),但我们现在尽可能使用 <script> 标签。

jQuery 源代码迁移到 ES 模块

当 jQuery 源代码在 main 分支从 AMD 迁移到 ES 模块 时,这是一个特别的日子。jQuery 源代码一直与 jQuery 发布一起在 npm 和 GitHub 上发布,但无法直接作为模块导入,除非使用 RequireJS,这是 jQuery 选择的构建工具。我们已切换到 Rollup 来打包 jQuery,并且我们单独在 ES 模块上运行所有测试。这使得 jQuery 与现代构建工具、开发工作流和浏览器兼容,通过使用 <script type=module>

移除已弃用的 API

这些函数已被弃用多个版本。现在到了主要版本,是时候移除它们了。这些函数要么一直是为内部使用而设计,要么现在在所有支持的浏览器中都有原生等价物。移除的函数包括:

jQuery.isArrayjQuery.parseJSONjQuery.trimjQuery.typejQuery.nowjQuery.isNumericjQuery.isFunctionjQuery.isWindowjQuery.camelCasejQuery.nodeNamejQuery.cssNumberjQuery.cssProps 和 jQuery.fx.interval

请改用原生等价物,如 Array.isArray()JSON.parse()String.prototype.trim() 和 Date.now()

移除已弃用的 API 加上移除旧 IE 支持代码,结果是 gzip 压缩后大小减少超过 3k 字节。

从 jQuery 原型中移除仅内部方法

jQuery 原型长期以来具有数组方法,这些方法不像其他 jQuery 方法那样行为,并且一直是为内部使用而设计。这些方法是 push、sort 和 splice。现在它们已从 jQuery 原型中移除。如果您在使用这些方法,$elems.push( elem ) 可以替换为 [].push.call( $elems, elem )

长期以来,浏览器在焦点和模糊事件的顺序上无法达成一致,包括 focusin、focusout、focus 和 blur。最后,jQuery 4.0 支持的所有浏览器的最新版本在事件顺序上达成了共识。不幸的是,它与 jQuery 多年前选择的顺序不同,这使得这是一个破坏性变更。至少现在每个人都在同一页上了!

从 jQuery 4.0 开始,我们不再覆盖原生行为。这意味着除了 IE 之外的所有浏览器将遵循当前的 W3C 规范,即:

  1. 1. blur
  2. 2. focusout
  3. 3. focus
  4. 4. focusin

jQuery 在之前版本中的顺序是:focusout、blur、focusin、focus。讽刺的是,唯一曾经遵循旧 W3C 规范(在 2023 年更新之前)的浏览器是 Internet Explorer。

更新 slim 构建

在 jQuery 4.0.0 中,slim 构建变得更小了,通过移除 Deferreds 和 Callbacks(现在 gzip 压缩后约 19.5k 字节!)。Deferreds 长期以来支持 Promises A+ 标准,因此在大多数情况下可以使用原生 Promises,并且它们在 jQuery 支持的所有浏览器中可用,除了 IE11。Deferreds 确实有一些原生 Promises 不支持的额外功能,但大多数用法可以迁移到 Promise 方法。如果您需要支持 IE11,最好使用主构建或添加原生 Promises 的 polyfill。

下载

您可以从 jQuery CDN 获取文件,或直接链接到它们:

https://code.jquery.com/jquery-4.0.0.js

https://code.jquery.com/jquery-4.0.0.min.js

您也可以从 npm 获取此版本:

npm install jquery@4.0.0

Slim 构建

有时您不需要 ajax,或者您更喜欢使用专注于 ajax 请求的众多独立库之一。而且通常使用 CSS 和类操作组合来处理 Web 动画更简单。最后,jQuery 支持的所有浏览器(除了 IE11)现在全面支持原生 Promises,因此在大多数情况下不再需要 Deferreds 和 Callbacks。与包含所有内容的常规 jQuery 版本一起,我们发布了排除这些模块的“slim”版本。如今 jQuery 的大小很少是加载性能问题,但 slim 构建比常规版本小约 8k gzip 字节。这些文件也在 npm 包和 CDN 上可用:

https://code.jquery.com/jquery-4.0.0.slim.js

https://code.jquery.com/jquery-4.0.0.slim.min.js

这些更新已作为 npm 和 Bower 上的当前版本可用。有关获取 jQuery 的所有方式的信息,请访问 https://jquery.com/download/。公共 CDN 今天会收到它们的副本,请给他们几天时间来发布文件。如果您急于快速开始,请使用我们 CDN 上的文件,直到他们有机会更新。

感谢

感谢所有参与此版本的人员,通过提交补丁、报告 bug 或测试,包括 Alex、Ahmed S. El-Afifi、fecore1、Dallas Fraser、Richard Gibson、Michał Gołębiowski-Owczarek、Pierre Grimaud、Gabriela Gutierrez、Jonathan、Necmettin Karakaya、Anders Kaseorg、Wonseop Kim、Simon Legner、Shashanka Nataraj、Pat O’Callaghan、Christian Oliff、Dimitri Papadopoulos Orfanos、Wonhyoung Park、Bruno PIERRE、Baoshuo Ren、Beatriz Rezener、Sean Robinson、Ed Sanders、Timo Tijhof、Tom、Christian Wenz、ygj6 以及整个 jQuery 团队。

jQuery 20 岁生日快乐!

在过去 20 年中,许多出色的人为 jQuery 及其相关项目做出了贡献,我们许多人在达拉斯聚会重聚。John Resig 甚至通过 Zoom 加入。此版本是在我们所有人聚在一起时发布的。

原文:https://blog.jquery.com/2026/01/17/jquery-4-0-0/


该文章在 2026/1/19 11:37:29 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved