Firefox 52 开发者版本

Firefox 52 于 2017 年 3 月 7 日发布。本文列出了对 Web 开发人员、Firefox 和 Gecko 开发人员以及附加组件开发人员都有用的关键更改。

Web 开发人员更改

开发者工具

HTML

CSS

新功能

CSS 网格

更改和删除

JavaScript

新功能

更改和删除

WebAssembly

  • 已将对 WebAssembly 的支持添加到 Gecko 中。

DOM

更改和删除

  • 已删除处理电话呼叫的 Firefox OS API(联系人、移动连接、ICC 等)(Firefox bug 1311206)。
  • 已删除 Firefox OS 的 Identity 接口 (Firefox bug 1309030)。
  • 已删除 Firefox OS 语音邮件 API(MozVoicemailMozVoicemailEventMozVoicemailStatusNavigator.mozVoicemail)(Firefox bug 1309723)。
  • 已删除 Firefox OS 蜂窝广播 API(MozCellBroadcastMozCellBroadcastEventMozCellBroadcastMessageNavigator.mozCellBroadcast)(Firefox bug 1306772)。
  • 已删除 Firefox OS 与电视广播相关的 API (Firefox bug 1306778)。
  • 已删除 Firefox OS 调频收音机 API(FMRadioNavigator.mozFMRadio)(Firefox bug 1306779)。

Service Workers 和 Fetch

  • 已删除 Headers.getAll() 方法,并且 Headers.get() 现在检索指定标头的所有值,而不仅仅是第一个值(请参阅 Firefox bug 1278275)。这符合最新的 Fetch API 规范更新。

Web Audio API

WebRTC

  • 当 ICE 连接暂时中断时,RTCPeerConnection.iceConnectionState 属性现在设置为 "disconnected";这表示可能很快自行解决的短暂故障,连接随后将恢复到 "connected" 状态 (Firefox bug 852665)。
  • MediaDevicesdevicechange 事件及其相应的处理程序,在 Firefox 51 中仅在 Mac 上默认实现但禁用,现在已在 Windows 和 Linux 上实现,并且现在在所有平台上都默认启用。
  • 现在支持 MediaStream.active 属性。此只读布尔属性指示流上的至少一条音轨是否当前正在播放。
  • 在 Firefox 52 之前,MediaStreamTrack.stop() 方法只能停止本地音轨(即,通过 getUserMedia() 获取的音轨)。现在可以停止各种音轨,包括与 WebRTC 连接、Web Audio API 流或 CanvasCaptureMediaStream 关联的 MediaStream 上的音轨。
  • 以前,在通过 Firefox 事件循环的单个传递过程中重复更改 TextTrackmode 会导致多个 change 事件传递到父媒体元素的 textTracks 属性指定的 TextTrackList。现在这些更改已合并为一个事件 (Firefox bug 882674)。

音频/视频/媒体

  • 当处理 <audio><video> 元素时发生错误时,HTMLMediaElement.error 中指定的 MediaError 对象现在包含一个 message 属性,该属性提供对发生的错误的具体描述。此字符串提供特定于此确切错误发生的详细信息,从而深入了解出错的原因 (Firefox bug 1299072)。此字段已包含在 Firefox nightly 版本(从 Firefox 51 开始)中,但现在在所有版本(包括发布版本)中都可用。

其他 API

  • 已删除在 Firefox 50 中添加(但始终返回错误)的方法 FileSystemFileEntry.createWriter() (Firefox bug 1315185
  • 已从平台中删除专有的 Firefox OS 应用程序安装/管理 API(请参阅 Firefox bug 1261019)。
  • 已从平台中删除专有的 Firefox OS Web 电话 API(请参阅 Firefox bug 1309719)。
  • 已从平台中删除专有的 Firefox OS Web 蓝牙 API(请参阅 Firefox bug 1310020)。
  • 电池状态 API 现在仅对 Chrome/特权代码可用(请参阅 Firefox bug 1313580)。
  • ImageBitmapRenderingContext.transferImageBitmap() 已重命名为 ImageBitmapRenderingContext.transferFromImageBitmap()(请参阅 Firefox bug 1304767)。
  • 已从 CanvasRenderingContext2D 中删除 mozDashmozDashOffset 成员(请参阅 Firefox bug 931389)。

HTTP

SVG

  • SVG 文档现在使用 XMLDocument 接口而不是 SVGDocument 表示。这是 SVG 2 规范中做出的更改。

安全

  • 当创建登录页面(例如,包含`<input type="password">` 字段的页面)以使其不安全地提交时,Firefox 会在密码字段下方显示一个上下文警告消息以警告用户(Firefox bug 1319119)。在不安全的登录表单上也会禁用自动填充(Firefox bug 1217152)。有关更多详细信息,请参阅不安全的密码
  • 已删除对 SHA-1 SSL 证书的支持;导航到使用 SHA-1 证书的安全页面现在将导致出现“不受信任的连接”错误(Firefox bug 1330043)。

插件

除了 Flash 之外,所有 NPAPI 插件支持都已删除。Flash 的使用也将在未来逐步淘汰。

附加组件和 Mozilla 开发人员更改

WebExtensions

接口

  • 已添加 nsIDroppedLinkHandler.dropLinks 方法和 nsIDroppedLinkItem 接口以处理多个项目的拖放(Firefox bug 92737)。

XUL

旧版本