Firefox 65 面向开发者的发布说明

本文档提供了 Firefox 65 中将影响开发者的变更信息。Firefox 65 于 2019 年 1 月 29 日发布。

Web 开发人员的变更

开发者工具

  • Flexbox 检查器现在默认启用。
  • JavaScript 调试器已增加对 XHR 断点的支持(Firefox bug 821610)。
  • 在辅助功能查看器中,右键单击辅助功能树中的项目,可以将其以 JSON 格式打印到 JSON 查看器。
  • 辅助功能选择器的颜色对比度显示已更新,如果文本背景复杂(例如,渐变或复杂图像),它会显示一系列颜色对比度值。
  • 网络监视器的“请求头”选项卡现在显示所选请求的 Referrer Policy(Firefox bug 1496742)。
  • 在显示堆栈跟踪(例如,在控制台日志或 JavaScript 调试器中)时,对框架方法的调用默认会被识别并折叠,从而更容易定位到您的代码。
  • 与原生终端类似,您现在可以使用反向搜索在 JavaScript 控制台历史记录中查找条目(Windows/Linux 上按 F9,或 macOS 上按 Ctrl + R,然后输入搜索词,再按 Ctrl + R/Ctrl + S 切换结果)。
  • JavaScript 控制台的 $0 快捷方式(引用页面上当前检查的元素)现在提供自动补全功能,例如,您可以输入 $0.te 来获取 $0.textContent 等属性的自动补全建议。
  • 您在检查器的“规则”视图中所做的编辑现在列在“更改”面板中(Firefox bug 1503920)。

HTML

CSS

  • image-rendering 属性的 crisp-edges 值现在已取消前缀(Firefox bug 1496617)。

  • scrollbar-colorauto 值现在解析为 auto,而不是两种颜色(Firefox bug 1501418)。

  • break-* 属性已实现,并且旧版 page-break-* 属性已别名为它们(Firefox bug 775618)。

  • overflow-wrap 属性的 anywhere 值已实现(Firefox bug 1505786)。

  • 新的步进位置关键字 jump-startjump-endjump-nonejump-both(可在 steps() 计时函数中使用)已实现(Firefox bug 1496619)。这与 frames() 计时函数的移除同时发生,后者是以前实现此类功能的方式,现已弃用。

  • 为与其他浏览器兼容,已添加一些新的 -webkit-appearance 值。特别是:

    • meter,现在用作 UA 样式表中 <meter> 元素的默认值。现有值 meterbar 现在是 meter 的别名(Firefox bug 1501483)。
    • progress-bar,现在用作 UA 样式表中 <progress> 元素的默认值。现有值 progressbar 现在是 progress-bar 的别名(Firefox bug 1501506)。
    • textarea,现在用作 UA 样式表中 <textarea> 元素的默认值。现有值 textfield-multiline 现在是 textarea 的别名(Firefox bug 1507905)。
  • user-select 的行为已更改,使其更与其他浏览器保持一致(Firefox bug 1506547)。具体来说:

    • 在元素上设置 user-select: all 不再覆盖在该元素的子元素上设置的其他 user-select 值。例如,在以下代码片段中:

      html
      <div style="-webkit-user-select: all">
        All
        <div style="-webkit-user-select: none">None</div>
      </div>
      

      设置了 none<div> 现在不可选。以前,此值会被父元素上设置的 all 值覆盖。

    • 嵌套在 contenteditable 元素中的非 contenteditable 元素现在可选择。

    • user-select 现在在 Shadow DOM 内部和外部表现一致。

    • 专有的 -moz-text 值已被移除。

  • CSS 环境变量(env() 函数)已实现(Firefox bug 1462233)。

移除

SVG

无更改。

JavaScript

API

新 API

DOM

DOM 事件

Web Workers

Fetch 和 Service Workers

媒体、Web Audio 和 WebRTC

Canvas 和 WebGL

移除

安全

网络

无更改。

插件

无更改。

WebDriver 符合性 (Marionette)

API 更改

  • WebDriver:ElementSendKeys 现在对 <input type=file> 的可交互性检查更加宽松,并允许这些元素隐藏而不再引发 not interactable 错误。如果需要严格的可交互性检查,可以使用 strictFileInteractability 功能(Firefox bug 1502864)。

错误修复

  • 窗口操作命令 WebDriver:FullscreenWindowWebDriver:MinimizeWindowWebDriver:MaximizeWindowWebDriver:SetWindowRect 已变得更加稳定(Firefox bug 1492499)。这意味着在特殊情况下它们不再导致无限挂起,而是如果无法达到请求的窗口状态,将在 5 秒后超时(Firefox bug 1521527)。
  • WebDriver:ElementClick 现在正确计算元素的中心点进行点击,这允许与 1x1 像素尺寸的元素进行交互(Firefox bug 1499360)。

其他

  • 对于 unexpected alert open 错误,提供了更具信息性的消息(Firefox bug 1502268)。

其他

附加组件开发人员的变更

API 更改

标签页

  • tabs API 已增强,以支持标签页后继者——标签页可以分配一个后继者,即它关闭后将激活的标签页的 ID(Firefox bug 1500479,另请参阅 这篇博客文章 获取更多信息)。特别是:
    • tabs.Tab 类型现在有一个 successorId 属性,可用于存储/检索标签页后继者的 ID。
    • tabs.onActivated 事件监听器的回调有一个新的可用参数 previousTabId,其中包含先前激活的标签页的 ID(如果它仍然打开)。
    • tabs.update() 函数的 updateProperties 对象上有一个新的可选属性 successorTabId,因此可用于更新它。
    • successorTabId 也由 tabs.get()tabs.query() 等函数返回。
    • 新函数 tabs.moveInSuccession() 允许批量操作标签页后继者。

清单更改

无更改。

其他

另见