Firefox 58 开发者版
本文提供有关 Firefox 58 中将影响开发者的更改的信息。Firefox 58 于 2018 年 1 月 23 日发布。
针对 Web 开发者的更改
开发者工具
- 现在默认情况下启用了 形状路径编辑器,用于通过
clip-path
(Firefox 错误 1405339) 生成的形状。 - 网络监视器 现在有一个按钮可以 暂停/恢复网络流量记录 (Firefox 错误 1005755)。
- 在 网络监视器 中,“Flash”过滤器按钮不再可用,并且 Flash 请求包含在“其他”过滤器中 (Firefox 错误 1413540)。
- 用于旧响应式设计模式(在 Firefox 52 之前默认启用)的代码现已从 Devtools 中删除 (Firefox 错误 1305777)。有关新工具的信息,请参阅 响应式设计模式。
- 从页面检查器 CSS 面板查看 MDN 文档的选项已被删除 (Firefox 错误 1382171)(自 55 起已禁用,Firefox 错误 1352801)。
HTML
无更改。
CSS
font-display
描述符现在在所有平台上默认可用 (Firefox 错误 1317445)。
SVG
无更改。
JavaScript
Promise.prototype.finally()
方法已实现 (Firefox 错误 1019116)。Intl.PluralRules
对象已实现 (Firefox 错误 1403318)。Intl.NumberFormat.prototype.formatToParts()
方法已实现 (Firefox 错误 1403319)。Intl.DateTimeFormat
对象现在支持hourCycle
选项和hc
语言标签 (Firefox 错误 1386146)。- 可选捕获绑定提案 已实现 (Firefox 错误 1380881)。
API
新的 API
PerformanceNavigationTiming
API 已实现 (Firefox 错误 1263722)。- Gecko 还提供了一个首选项,可用于在需要时禁用接口 -
dom.enable_performance_navigation_timing
,默认值为true
(Firefox 错误 1403926)。
- Gecko 还提供了一个首选项,可用于在需要时禁用接口 -
DOM
- 某些 API 中通过错误对象报告的错误(例如
FileReader
、IDBRequest
和IDBTransaction
的error
属性,以及当通过RTCPeerConnection
的某些方法进行的请求不成功时)现在由DOMException
实例表示。DOMError
现在已弃用,已从 DOM4 规范中移除 (Firefox 错误 1120178)。 - 现在支持
PerformanceResourceTiming.workerStart
属性 (Firefox 错误 1191943)。 - 已实现基于预算的后台超时节流 - 有关详细信息,请参阅 用于帮助后台页面性能的策略 (Firefox 错误 1377766)。
DOM 事件
无更改。
媒体和 WebRTC
- 已删除
HTMLMediaElement.srcObject
的带前缀版本;请确保代码已更新为使用标准srcObject
而不是mozSrcObject
(Firefox 错误 1183495)。 - 使用
MediaStream.addTrack()
将轨道添加到使用getUserMedia()
获取的流中,然后尝试记录生成的流现在按预期工作。以前,仅由getUserMedia()
返回的流中最初包含的轨道被包含在记录的媒体中 (Firefox 错误 1296531)。 - WebVTT
VTTRegion
接口始终在解释 WebVTT 文件时创建,但生成的区域以前没有被使用。从 Firefox 58 开始,如果启用了首选项media.webvtt.regions.enabled
并将其值设置为true
,则会使用这些区域。
画布和 WebGL
- 对带前缀的 WebGL 扩展的支持已被删除 (Firefox 错误 1403413)
- 对于
MOZ_WEBGL_compressed_texture_atc
,请改用WEBGL_compressed_texture_atc
。 - 对于
MOZ_WEBGL_compressed_texture_pvrtc
,请改用WEBGL_compressed_texture_pvrtc
。 - 对于
MOZ_WEBGL_compressed_texture_s3tc
,请改用WEBGL_compressed_texture_s3tc
。 - 对于
MOZ_WEBGL_depth_texture
,请改用WEBGL_depth_texture
。 - 对于
MOZ_WEBGL_lose_context
,请改用WEBGL_lose_context
。
- 对于
HTTP
frame-ancestors
在Content-Security-Policy-Report-Only
中不再被忽略 (Firefox 错误 1380755)。- Firefox 现在实现了一个 TLS 握手超时,默认值为 30 秒。可以通过编辑 about:config 中的
network.http.tls-handshake-timeout
首选项来更改超时值 (Firefox 错误 1393691)。 - 已实现
worker-src
CSP 指令 (Firefox 错误 1302667)。 - 现在支持 425:过早 状态代码和相关的
Early-Data
请求标头 (Firefox 错误 1406908)。
安全
无更改。
插件
无更改。
其他
- “添加到主屏幕”现在在 Firefox for Android 中受支持,这是 渐进式 Web 应用 努力的一部分 (Firefox 错误 1212648)。
- WebAssembly 现在有一个分层编译器,提供加载时优化 (Firefox 错误 1277562),以及新的流式 API -
WebAssembly.compileStreaming()
和WebAssembly.installStreaming()
Firefox 错误 1347644。
从 Web 平台中移除的功能
HTML
- 您不再可以在
<map>
元素内嵌套<a>
元素来创建热点区域 - 需要使用<area>
元素 (Firefox 错误 1317937)。
CSS
- 以下专有 Mozilla 系统度量伪类不再可用于 Web 内容 (Firefox 错误 1396066)
:-moz-system-metric(images-in-menus)
:-moz-system-metric(mac-graphite-theme)
:-moz-system-metric(scrollbar-end-backward)
:-moz-system-metric(scrollbar-end-forward)
:-moz-system-metric(scrollbar-start-backward)
:-moz-system-metric(scrollbar-start-forward)
:-moz-system-metric(scrollbar-thumb-proportional)
:-moz-system-metric(touch-enabled)
:-moz-system-metric(windows-default-theme)
- 以下专有 Mozilla 媒体特征不再可用于 Web 内容 (Firefox 错误 1396066)
-moz-color-picker-available
-moz-is-glyph
-moz-mac-graphite-theme
-moz-mac-yosemite-theme
-moz-os-version
-moz-overlay-scrollbars
-moz-physical-home-button
-moz-scrollbar-end-backward
-moz-scrollbar-end-forward
-moz-scrollbar-start-backward
-moz-scrollbar-start-forward
-moz-scrollbar-thumb-proportional
-moz-swipe-animation-enabled
-moz-windows-accent-color-in-titlebar
-moz-windows-classic
-moz-windows-compositor
-moz-windows-default-theme
-moz-windows-glass
-moz-windows-theme
- 专有 Mozilla
:-moz-styleeditor-transitioning
伪类不再可用于 Web 内容 (Firefox 错误 1396099)。
JavaScript
- 非标准
Date.prototype.toLocaleFormat()
方法已被删除 (Firefox 错误 818634)。 - 非标准且已弃用的
Object.prototype.watch()
和unwatch()
方法已被移除,不再有效 (Firefox 错误 638054)。考虑使用 setter 和 getter 或 代理 代替。 - 已移除 旧版迭代器协议、
StopIteration
对象、旧版生成器函数 和非标准的Function.prototype.isGenerator()
方法。请使用 ES2015 迭代器协议 和符合标准的 迭代器和生成器 代替 (Firefox 错误 1083482、Firefox 错误 1413867、Firefox 错误 1119777)。 - 已移除非标准的 数组推导 和 生成器推导 (Firefox 错误 1414340)。
API
- 在 Firefox 58 中完全移除了
XMLHttpRequest.responseType
属性的专有值moz-blob
和moz-chunked-text
(Firefox 错误 1397145、Firefox 错误 1397151、Firefox 错误 1120171)。 - 已移除控制 中止 API 功能 的
dom.abortController.enabled
和dom.abortController.fetch.enabled
首选项,因为这些功能现在默认已启用 (Firefox 错误 1402317)。 - 在 Firefox 58 中移除了专有属性
mozSrcObject
(Firefox 错误 1183495)。请使用标准的HTMLMediaElement.srcObject
属性代替。
SVG
无更改。
针对附加组件和 Mozilla 开发者的更改
WebExtensions
- browserSettings
- browserSettings.webNotificationsDisabled 已实现 (错误 1364942)
- browsingData
- browsingData.localStorage 现在支持按主机删除 localStorage (错误 1388428)
- pkcs11 API 用于管理安全设备 (错误 1357391)
- privacy
- 现在可以通过 firstPartyIsolate 切换第一方隔离 (错误 1409045)
- 现在可以通过 resistFingerprinting 切换抗指纹识别首选项 (错误 1397611)
- tabs
- tabs.discard 已实现 (错误 1322485)
- 已实现 Tab 的 isArticle 和 isInReaderMode 属性 (错误 1381992)
- toggleReaderMode() 方法已实现 (错误 1381992)
- 已实现 tabs.created 的 openInReaderMode 选项 (错误 1408993)
- tabs.onUpdated 现在会在进入/退出阅读器模式时发出通知 (错误 1402921)
- theme
- getCurrent() 方法用于获取当前主题属性 (错误 1349944)
- onUpdated 方法用于接收 WebExtension 主题更新 (错误 1349944)
- colors.bookmark_text 现在支持作为 colors.toolbar_text 的别名 (错误 1412595)
- 已实现 colors.toolbar_top_separator、colors.toolbar_bottom_separator 和 colors.toolbar_vertical_separator (错误 1347190)
- webRequest
- webRequest.onBeforeRequest 现在包含 "frameAncestors" 参数
旧版本
- 面向开发者的 Firefox 57
- 面向开发者的 Firefox 56
- 面向开发者的 Firefox 55
- 面向开发者的 Firefox 54
- 面向开发者的 Firefox 53
- 面向开发者的 Firefox 52
- 面向开发者的 Firefox 51
- 面向开发者的 Firefox 50
- 面向开发者的 Firefox 49
- 面向开发者的 Firefox 48
- 面向开发者的 Firefox 47
- 面向开发者的 Firefox 46
- 面向开发者的 Firefox 45
- 面向开发者的 Firefox 44
- 面向开发者的 Firefox 43
- 面向开发者的 Firefox 42
- 面向开发者的 Firefox 41
- 面向开发者的 Firefox 40
- 面向开发者的 Firefox 39
- 面向开发者的 Firefox 38
- 面向开发者的 Firefox 37
- 面向开发者的 Firefox 36
- 面向开发者的 Firefox 35
- 面向开发者的 Firefox 34
- 面向开发者的 Firefox 33
- 面向开发者的 Firefox 32
- 面向开发者的 Firefox 31
- 面向开发者的 Firefox 30
- 面向开发者的 Firefox 29
- 面向开发者的 Firefox 28
- 面向开发者的 Firefox 27