Firefox 71 for developers
本文档提供了关于 Firefox 71 中将影响开发者的更改信息。Firefox 71 已于 2019 年 12 月 3 日发布。
Web 开发人员的变更
开发者工具
控制台:
- Console 的多行模式现已默认可用。
- Console 配置选项现已合并到一个新的工具栏设置菜单中(Firefox bug 1523868)。
- 内联变量预览已启用(Firefox bug 1576679)。
- 事件日志记录现已可用(Firefox bug 1110276),同样也支持按事件类型过滤。
- 新的调试器暂停覆盖层现在可以使用
devtools.debugger.features.overlay首选项禁用(Firefox bug 1579768)。 - 我们为打开调试器添加了新的键盘快捷键:Linux/Windows 上为
Ctrl+Shift+Z,macOS 上为Cmd+Opt+Z(Firefox bug 1583042)。 - 暂停DOM 节点修改断点现在会显示具有断点的 DOM 节点,如果可用,还会显示添加/移除的子节点(Firefox bug 1576145)。
- 在美化打印的源代码中,在美化打印后以及从检查器的事件监听器工具提示跳转到源代码时,位置现在是正确的(Firefox bug 1500222)。
- WebSockets 检查器现已默认启用(Firefox bug 1573805)。
- 现在可以对请求/响应正文、标头和 cookie 进行全文搜索。
- 现在可以输入模式来阻止加载特定 URL。
- 时间轴标签页现在公开在
Server-Timing标头中发送的时间数据(Firefox bug 1403051)。
- 现在在具有颜色值的 CSS 变量定义旁边显示颜色样本(Firefox bug 1456167)。
:visited样式现在显示在 CSS 规则视图中(Firefox bug 713106)。
CSS
- 为 CSS Grid Level 2 的
grid-template-columns和grid-template-rows添加了subgrid值(Firefox bug 1580894)。 - 为多列布局添加了对
column-span属性的支持(Firefox bug 1426010)。 - 添加了对
clip-path的path()值支持(Firefox bug 1488530)。 - 将
<img>元素的height和widthHTML 属性映射到内部的aspect-ratio属性(Firefox bug 1585637)。请参阅 MDN 上该功能的指南。
移除
- CSS 径向渐变不再接受负半径(Firefox bug 1583736)。
JavaScript
- 现在支持
Promise.allSettled()方法(Firefox bug 1549176)。此方法可让您在运行后续代码之前,轻松等待一组 Promise 中的每个 Promise 都已成功或失败。
移除
- Firefox 71 中已移除非标准的 Array 泛型方法(Firefox bug 1222547)。它们最初在 Firefox 1.5 中引入,并从 Firefox 68 开始弃用。如果您需要使用类数组对象的数组泛型,可以使用
Array.from()将您的对象转换为合适的数组,然后使用标准的数组方法。
MathML
- MathML 元素现在实现了 MathML DOM,并且其类为
MathMLElement。通过标准的 MathML DOM,您现在可以使用mathmlEl.style或全局事件处理器等。在此更改之前,MathML 元素仅实现了Element类(Firefox bug 1571487)。
API
新 API
Media Session API 现在已部分实现。此 API 提供了一种标准机制,供您的内容与底层操作系统共享正在播放的媒体状态信息。这包括艺术家、专辑和曲名等元数据,以及可能的专辑封面(Firefox bug 1580602)。
该 API 还提供了一种在用户激活设备媒体控件(如播放、暂停和搜索按钮)时接收通知的方式。为此,MediaSession 接口现在已部分实现,支持设置和获取当前播放媒体的元数据,以及setActionHandler() 方法。要访问 MediaSession API,请使用navigator.mediaSession 属性。
DOM
- 现在支持
StaticRange()构造函数(Firefox bug 1575980)。 - 已实现 MathML
MathMLElement接口(Firefox bug 1571487)。
媒体、Web Audio 和 WebRTC
Canvas 和 WebGL
OVR_multiview2和OES_fbo_render_mipmapWebGL 扩展现在默认公开(Firefox bug 1584277,Firefox bug 1583878)。
移除
以下非标准的DataTransfer 成员已被移除(Firefox bug 1345192)。
DataTransfer.mozItemCountDataTransfer.mozClearDataAt()DataTransfer.mozGetDataAt()DataTransfer.mozSetDataAt()DataTransfer.mozTypesAt()
WebDriver 符合性 (Marionette)
WebDriver:TakeScreenshot和WebDriver:TakeElementScreenshot命令都已更新,以遵守未处理的提示行为设置(Firefox bug 1584927)。Marionette:Quit命令已更新,允许退出或重启 Firefox 以外的其他 Gecko 驱动的应用程序(Firefox bug 1298921)。- 对于 Android 上的基于 GeckoView 的浏览器,会话功能中返回的
browserName现在将始终为firefox(Firefox bug 1587364)。
附加组件开发人员的变更
API 更改
-
downloads.download现在识别并报告以下 HTTP 响应代码为错误:- 404 返回
SERVER_BAD_CONTENT - 403 返回
SERVER_FORBIDDEN - 402 和 Proxy 407 返回
SERVER_UNAUTHORIZED - 其他任何大于 400 的值返回
SERVER_FAILED(Firefox bug 1576333)。
- 404 返回
-
downloads.download现在包含可选的options参数属性allowHttpErrors。当设置为true时,此boolean标志允许下载在遇到 HTTP 错误后继续进行。当设置为false时,下载将在遇到 HTTP 错误时取消。默认值为false。(Firefox bug 1578955)
移除
- 已移除
proxy.register()和proxy.unregister()函数(Firefox bug 1443259)。现在应使用proxy.onRequest来处理请求的代理。
另见
- Hacks 文章:Firefox 71:年终发布