jQuery 3.2.0 发布!

发布于 作者

jQuery 3.2.0 已发布!

此版本包含一些错误修复、改进和一些弃用。从 jQuery 3.0+ 升级不应存在兼容性问题。

如果您尚未升级到 jQuery 3+,请查看 3.0 升级指南jQuery Migrate 3.0 插件将帮助您识别代码中的兼容性问题。

请尝试使用此新版本,并 告知我们您遇到的任何问题

重要更新

  • 添加了对自定义 CSS 属性的支持 (#3144)。
  • 弃用 jQuery.holdReady (#3288)。
  • 弃用 jQuery.nodeName (#3475)。
  • 弃用 jQuery.isArray (#2961)。
  • 修复了 .width()、.height() 和相关方法中的一个错误,该错误将 CSS 变换包含在计算中。例如,具有样式 transform: scale(2x) 的元素不应将其宽度和高度值加倍 (#3193)。
  • 为 .contents() 方法添加了对 <template> 元素的支持 (#3436)。
  • 将已弃用的模块添加回精简版本。此更改影响不大,因为该模块的尺寸很小。我们认为,同时从主 jQuery 构建和精简构建中删除已弃用的部分更有意义 (#3237)。

下载

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

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

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

您也可以从 npm 获取此版本

npm install jquery@3.2.0

精简版

有时您不需要 ajax,或者您更喜欢使用许多独立的库来关注 ajax 请求。而且,通常使用 CSS 和类操作来完成所有网络动画会更简单。除了包含 ajax 和效果模块的常规 jQuery 版本外,我们还发布了一个“精简”版本,不包括这些模块。这些天 jQuery 的大小很少成为加载性能问题,但精简版本比常规版本小约 6k gzip 字节 – 23.6k 与 30k。这些文件也可用在 npm 包和 CDN 上

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

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

感谢

感谢所有参与此版本的人,包括 Connor AthertonJason BedardDavid Broder-RodgersOleg GaidarenkoMichał GołębiowskiRichard Gibsonkaran-96Manoj KumarAlexander LisianoiAlex LoudenAlex Padilla 和整个 jQuery 团队。

GitHub changelog: 3.2.0 中修复的问题 | 所有更改

完整 changelog

Callbacks

  • 防止 add() 在使用内存列表时解锁 (#3469, 9d822bc1)

核心

  • 弃用 jQuery.holdReady (#3288, bd984f0e)
  • 弃用 jQuery.nodeName (#3475, ac9e3016)
  • 弃用 jQuery.isArray (#2961, 1b9575b9)

CSS

  • 删除 getWidthOrHeight 中的未使用内部函数 (96533cd0)
  • 支持自定义属性 (#3144, 619bf98d)

Deferred

  • 停止发明 jQuery.when() 解析值 (#3442, 5d79c646)

Dimensions

  • 在检索宽度/高度时忽略变换 (#3193, c920ff6e)

文档

  • 从 .npmignore 中删除 jscs.json (fedc1aa6)
  • 更正 issue 模板中的错别字 (a8816caf)

Effects

  • 稳定 rAF 逻辑并将其与超时逻辑对齐 (#3434, 6d43dc42)
  • 解决最近的 Callbacks 修复中发现的问题 (#3502, #3503, 3c89329c)

事件

  • 以相同的方式触发复选框和单选按钮点击事件 (#3423, b442abac)
  • 添加单选按钮点击触发测试 (5f35b5b4)

操作

  • 将 tbody 搜索限制为子节点 (#3439, efdb8a46)

Offset

  • 消除很少使用的内部函数 (#3449, bf3a43ef)
  • 报告 0 尺寸元素的偏移量 (#3267, 1777899a)

Tests

  • 跳过非支持浏览器的 CSS 自定义属性测试 (bcec54ee)
  • 更新加载器,使测试页面始终获取 jQuery (14b393d0)
  • 添加了符号分隔的标签名称的测试 (#2006, bd9145fa)
  • 清理 CSS 自定义属性支持测试 (fc34dbc2)

Traversing

  • $.fn.contents() 支持 HTMLTemplateElement (#3436, 3e3b09d6)

构建

  • 在 Node.js 7 上运行测试 (7bb62bb3)
  • 停止在 Node.js 0.10 上进行测试 (5b4cb0d3)
  • jQuery Foundation -> JS Foundation (7fbab881)
  • 使 @CODE 替换正则表达式更健壮 (4e509677)
  • ESLint 设置改进 (cbc8638c)
  • 从 .npmignore 中删除 jscs.json (b3e0a560)
  • 将大部分 dist 文件夹添加到 .eslintignore (1754e315)
  • 使用有效的 ecmaVersion (8cb4cd71)
  • 停止支持在 Node.js 0.12 上构建 (d10ac0e5)
  • 修复 AMD 模式下的测试 (56136897)
  • 修复 package.json 中的 markerPattern 和 ticketPattern 正则表达式 (25c6a0a2)
  • 在精简版中保留已弃用的模块 (#3237, 0588d0ce)

10 条关于“jQuery 3.2.0 发布!”的评论

  1. gpgekko 发表于 说:

    “显著更新
    (…)
    – 将已弃用的模块添加回精简版本。鉴于该模块的体积很小,此更改影响不大。我们认为同时从主 jQuery 版本和精简版本中删除已弃用的部分更有意义 (#3237)。”

    “精简版本
    (…)总而言之,它排除了 ajax、效果和当前已弃用的代码。(…)”

    帖子在这方面似乎自相矛盾。

  2. Timmy Willison 发表于 说:

    @Steve、@gpgekko、@Elvis:已在各处编辑。谢谢!