---
title: 面向开发者的Firefox 69
slug: Mozilla/Firefox/Releases/69
translation_of: Mozilla/Firefox/Releases/69
---
{{FirefoxSidebar}}
这篇文章将会围绕Firefox 69对于开发者产生的影响展开。
Firefox 69 发布于2019年9月3日。
对于web开发者的变化
开发者工具
Debugger(调试器)
- Event Listener Breakpoints(事件监听断点) 让你诊断中的代码执行的页面响应浏览器事件。你可以选择特殊的类型,比如
click(点击)
或者 keydown(按下键盘)
, 亦或所有类型的事件,诸如所有的鼠标输入事件。 ({{bug(1526082)}}).
- 调试其中的 源列表窗格 所显示的脚本可以通过 Download file(下载文件) 内容菜单选项来完成保存。 ({{bug(888161)}}).
- 在调试期的源列表窗格中,被加载的扩展会根据他们的名字被逐一罗列出来,而非是他们的UUID {bug(1486416)}}),使它更为容易地找你你要调试的扩展代码
- 通过延迟加载脚本,调试器的加载速率得到了明显地改善{{bug(1527488)}}).
Console(控制台)
Network(网络)
- 由于CSP 或者 Mixed Content 所阻塞的资源现在可以在网络面板上得到显示,并且对其缘由有着细节展示。 ({{bug(1556451)}}).
- 在网络面板上,一个新的且可选择的URL栏能够为我们展示你资源所有的全部的URL ({{bug(1341155)}}).
Inspector(查看器)
- 当你的光标悬停在页面选择器中的某个元素,现在信息栏将会显示这个元素是一个弹性容器还是一个弹性项目的事实。 ({{bug(1521188)}}).
Remote debugging(远程调试)
General(日常)
- 开发工具的面板布局已经为了迎合流行元素而做出了改动。{{bug(1558630)}}).
HTML
- In order to align more closely to the specification, the text track associated with a {{HTMLElement("track")}} element no longer loads the WebVTT file containing the text cues if the element is created in its default
disabled
{{domxref("TextTrack.mode", "mode")}}. To access or manipulate the cues when the mode
is disabled
, change the mode
to either started
or hidden
; this will trigger loading of the WebVTT data ({{bug(1550633)}}).
Removals
- The HTML {{HTMLElement("keygen")}} element has been removed from Firefox. It was deprecated some time ago, and its purpose has generally been supplanted by other technologies ({{bug(1315460)}}).
CSS
- We implemented the
break-spaces
value of the {{cssxref("white-space")}} property ({{bug(1351432)}}).
- The SVG geometry attributes (such as {{SVGAttr("width")}} and {{SVGAttr("height")}}) can now also be defined as CSS properties ({{bug(1383650)}}).
- The {{cssxref("::cue")}} selector — used to style the captions ("cues") displayed by WebVTT — now enforces the limitations on which CSS properties may be used within cues, as per the specification ({{bug(1321488)}}).
- We've restricted the properties that may apply to {{cssxref("::marker")}} as per the specification ({{bug(1552578)}})
- The {{cssxref("overflow-block")}} and {{cssxref("overflow-inline")}} properties have been implemented ({{bug(1470695)}}).
- We added the ability to test for support of a selector when using CSS Feature Queries ({{cssxref("@supports")}}), with the
selector()
method ({{bug(1513643)}}).
- The {{cssxref("user-select")}} property — which specifies whether or not the user is able to select text in the affected element — has been unprefixed ({{bug(1492739)}}).
- We implemented local-specific casing behavior for Lithuanian ({{bug(1322992)}}), as seen in this example.
- We've implemented the {{cssxref("line-break")}} property of CSS Text ({{bug(1011369)}} and {{bug(1531715)}}).
- The {{cssxref("contain")}} property — which allows developers to define that an element and its contents are mostly independent of the rest of the DOM tree — got implemented {{bug(1487493)}}.
SVG
- We've added support for gzip-compressed SVG-in-OpenType ({{bug(1359240)}}).
- The {{domxref("SVGGeometryElement.isPointInFill()")}} and {{domxref("SVGGeometryElement.isPointInStroke()")}} methods have been implemented ({{bug(1325319)}}).
JavaScript
- Public class fields are enabled by default ({{bug(1555464)}}). See also Class fields for more information.
- The promise rejection events
unhandledrejection
and rejectionhandled
are now enabled by default ({{bug(1362272)}}). To learn more about how these work, see {{SectionOnPage("/en-US/docs/Web/JavaScript/Guide/Using_promises", "Promise rejection events")}}.
HTTP
- The HTTP headers {{HTTPHeader("Access-Control-Expose-Headers")}}, {{HTTPHeader("Access-Control-Allow-Methods")}}, and {{HTTPHeader("Access-Control-Allow-Headers")}} now accept a wildcard value "
*
" for requests without credentials ({{bug(1309358)}}). This change has also been uplifted to Firefox 68 ESR.
APIs
New APIs
- The Resize Observer API is supported by default ({{bug(1543839)}}).
- The Microtask API ({{domxref("WindowOrWorkerGlobalScope.queueMicrotask()")}}) has been implemented ({{bug(1480236)}}).
DOM
- For improved user security, and in-keeping with the latest versions of the Media Capture and Streams specification, the {{domxref("navigator.mediaDevices")}} property is no longer present if the context is insecure. To use {{domxref("MediaDevices.getUserMedia", "getUserMedia()")}}, {{domxref("MediaDevices.getDisplayMedia", "getDisplayMedia()")}}, {{domxref("MediaDevices.enumerateDevices", "enumerateDevices()")}}, and so forth, be sure your content is loaded using {{Glossary("HTTPS")}} ({{bug(1528031)}}).
- The Web Audio API's {{domxref("AudioParam.value")}} property now returns the actual value of the property at the current time, taking into account all scheduled or gradiated value changes. Previously, Firefox only returned the most recent explicitly-set value (as through using the
value
setter) ({{bug(893020)}}).
- We've updated {{domxref("MediaStreamAudioSourceNode")}} to use the new, lexicographical, ordering for tracks. Previously, track ordering was up to the individual browser, and could even change arbitrarily. In addition, attempting to create a
MediaStreamAudioSourceNode
using a stream that has no audio tracks now throws an InvalidStateError
exception ({{bug(1553215)}}).
- The {{domxref("MediaTrackSettings.facingMode", "facingMode")}}, {{domxref("MediaTrackSettings.deviceId", "deviceId")}}, and {{domxref("MediaTrackSettings.groupId", "groupId")}} settings are now included as members of the {{domxref("MediaTrackSettings")}} object returned by calls to {{domxref("MediaStreamTrack.getSettings()")}} ({{bug(1537986)}}).
Removals
- The {{domxref("DOMMatrix.scaleNonUniformSelf()")}} method has been removed ({{bug(1560119)}}).
Other
-
Marionette now dynamically handles the opening and closing of modal dialogs and user prompts ({{bug(1477977)}}), which also means that multiple open prompts will be handled ({{bug(1487358)}}).
-
Tracking protection and DOM push features are now disabled by default to avoid the removal of parts of the DOM, and extra notifications ({{bug(1542244)}}).
-
Automatic unloading of background tabs if Firefox runs into a low memory condition is now disabled — this badly interacts with automation when switching between tabs ({{bug(1553748)}}).
Changes for add-on developers
API changes
- The UserScripts API is now enabled by default.
- The
topSites.get()
method now has new options available — includePinned
and includeSearchShortcuts
({{bug(1547669)}}).
Other changes
- There are now Group Policy options to blacklist all extensions except the ones that have been whitelisted ({{bug(1522823)}}).
See also
Older versions
{{Firefox_for_developers(68)}}