17611538698
webmaster@21cto.com

jQuery 4.0 发布测试版,减少对 IE 支持并进行重大更改

前端 0 96 2024-02-11 04:01:54

图片

jQuery 团队近日发布 4.0 测试版,其宣布出对 IE 10 及更低版本支持已删除,并对重大更改发出警告。对 IE 的支持将在 5.0 版本中完全取消,尽管这还需要几年的时间,需要开发者们注意。


根据builtwith 统计数据,排名前 100 万的网站中超过 60% 使用了 jQuery JavaScript 库。


根据 jQuery 团队负责人 Timmy Willison 的说法,该版本的删除内容和新增内容一样多。对许多浏览器的支持已被删除,包括 IE 11 之前的老版本、Edge Legacy(不基于 Chromium 引擎)、iOS 11 之前的老版本、Firefox 65 之前的老版本等。

 

Willison 表示 IE 支持将在 JQuery 5.0 中完全删除。

公平地角度说,jQuery 项目进展并不快,上一个主要版本 jQuery 3.0 Final在 2016 年 6 月发布,而 4.0 曾计划于 2022 年发布,结果跳票了几次。

有人询问 jQuery 3.x 将支持多长时间?

在诸多讨论中,维护者 Michał Gołębiowski-Owczarek 这样表示,“2026 年对我来说是可行的,2028 年对我来说有点远。”

jQuery 4.0 已经放弃了对大约十几个已弃用的 API 的支持,这些 API 要么仅供内部使用,要么现在在所有受支持的浏览器中都有本机等效项。焦点和模糊事件触发的顺序已更改。

jQuery的FormData 现在支持二进制数据,用于将数据发送到服务器。

Willison 表示,“从技术上讲,这是一个突破性的变化,但应该接近预期的行为。”

尽管有这些重大变化,从 jQuery 3.x 升级时通常不会出现兼容性问题,但从 2.x 升级可能会出现更多Bug。 

jQuery 开发方式也发生重大变化,从 4.0 版本开始,使用 ES (ECMAScript) 模块,并使用 Rollup 而不再是 RequireJS 进行打包。

jQuery 的作用既是简化 JavaScript 编程,又是为旧版浏览器中缺少的功能提供解决方法。

从微软的 Trident 引擎(在 IE 中使用,并为 Edge Legacy 分叉)的使用逐渐减少,这意味着 jQuery 在某些方面比以前不再那么必要了,甚至有一个名为“You might not need jQuery”的网站致力于显示避免依赖的本机代码。虽然如此,jQuery 已深深嵌入互联网中,许多流行的库和框架都在使用它。

对于是否在新代码中避免使用 jQuery ,开发者们也存在分歧。

有的开发者支持摒弃jQuery:

“几年前,我放弃了 jQuery,转而使用普通的 js,而且我从未回头。原生 js 拥有 jQuery 所拥有的一切,” Hacker News 的一位评论者这样说道。

另一队开发者以数据来支持jQuery

“jQuery是一个得到广泛支持、极其稳定的工具集,不仅适用于 DOM 选择,还适用于属性操作、Ajax 请求、事件处理、动画和一般实用功能。更重要的是,当有本机功能取代 jQuery 时,API 永远不会那么流畅。”

作者:万能的大雄

评论