本篇文章将提供关于在Firefox 68版本中，会影响到开发人员的更新的信息。Firefox 68版本发布于2019年7月9日。
- 现在网页控制台会展现更多关于CSS警告的信息, 其中包括使用该规则的DOM元素的节点列表 (bug 1093953)。
- 您可以在网页控制台中使用常规的表达式来过滤内容(bug 1441079)。
- 现在浏览器控制台允许您通过设置勾选或不勾选名为“显示内容消息”的复选框来显示或隐藏来自内容进程的消息(bug 1260877)。
- 您现在可以在调试器中通过点击 Shift + Ctrl + F (Windows or Linux) 或 Shift + Cmd + F (macOS)在当前项目的所有文件进行 搜索 (bug 1320325)。
- 网络监视器的 请求列表(request list) 现在允许您封锁特定的URL地址 (bug 1151368)。
- 您现在不需要通过编辑方法、URL、参数和页眉的方式，而是可以通过使用在内容目录的 “重新发送（Resend）” 命令，来重新发送一个网络请求 (bug 1422014)。
- 网络监视器内容目录里的 “页眉（Headers）” 标签现在允许您以JSON格式，复制全部或部分页眉信息到剪切板 (bug 1442249)。
- 一个允许您切换任何打印媒体查询 (print media queries) 显示的按钮已被添加页面查看器的 “规则仪表盘（rules panel）” (bug 1534984)。
- “字体仪表盘（fonts panel）” 现在已包括一个可以调整
字母间距的滑条 (bug 1536237).
- 一个警告标志会出现在包含无效值的、不被支持的CSS属性或规则, 以帮助您了解为何某个特定的风格没有被渲染 (bug 1306054)。
- 访问性查看器 现在包含了一个新的 “检查问题（Check for issues）” 的特性, 其中包括很多可以高亮显示您的网页的访问性问题的检查工具。第一个可用的检查是对比 （contrast）, 用于突出颜色对比问题。
- 在 about:debugging 页面的控制内部拓展可视性（系统附加组件和隐藏拓展）的偏好已由
- 响应设计模式（Responsive design mode）已被重新设计— 设备设置 对话框 (device selection menu > Edit List...) 现在使用起来更加直观简单 (bug 1487857)。
<track>元素 — 由
<link>元素 , 引用的样式表不会在页面加载时被加载, 当
false或移除时，该样表会被加载 (bug 1281135)。
- CSS Scroll Snapping has been updated to the latest version of the specification (bug 1312163) and (bug 1544136), this includes:
-webkit-line-clampproperty has been implemented for compatibility with other browsers (bug 866102).
- Support has been added for the
::markerpseudo-element (bug 205202) and animation for
::markerpseudos (bug 1538618)
- We changed
currentcolorto be a computed value (except for the
colorproperty) (bug 760345).
- Support has been fixed for the
chlength unit so it now matches the spec (fallback for no '0' glyph, vertical metrics) (bug 282126)
counter-setproperty has been implemented. (bug 1518201).
- We now implement list numbering using a built-in "list-item" counter; this fixes list numbering bugs (bug 288704).
- Selector matching and parsing support has been implemented for
::part()(bug 1545430) and (bug 1545425).
- CSS Transforms are now supported in indirectly rendered things e.g.)
While we're keeping the prefixed versions of the various gradient properties (
repeating-radial-gradientavailable for compatibility reasons, we have revised how they're parsed so that they're handled much more like the non-prefixed versions. This means that certain existing styles won't work correctly.
In particular, the complicated syntax taking both an angle and a position will no longer work, and the
tokeyword in the
<side-or-corner>parameter is not required for the prefixed gradient properties. You are encouraged to use the standard, non-prefixed gradient properties instead, as they're now widely supported (bug 1547939).
scroll-snap-type-yhave been removed.
scroll-snap-typeproperty has become a longhand, so the old shorthand syntax like
scroll-snap-type:mandatorywill stop working. See the Firefox Site Compatability note.
- The new
BigIntprimitive is enabled by default (bug 1527902).
- String generic methods have been removed (bug 1222552). See the deprecation warning for more information.
CSS Object Model (CSSOM)
- The legacy
removeRule()methods have been added to the
CSSStyleSheetinterface. These were introduced by Internet Explorer 9 and have never managed to quite be stamped out, so they have been added to improve compatibility with the small percentage of sites that still use them (bug 1545823).
- The Visual Viewport API has now been enabled by default on Android (bug 1512813). Adding this API to desktop versions of Firefox is being tracked in bug 1551302.
noreferreris now supported; if specified, the new window's content is loaded without sharing the hostname, IP address, URL, or other identifying information about the host device (bug 1527287).
HTMLImageElementis now implemented. This can be used to trigger loading and decoding of an image prior to adding it to the DOM (bug 1501794).
XMLHttpRequesthas been updated to no longer accept the non-standard
responseType. Code still using it should be updated to use the Fetch API as a stream (bug 1120171).
XMLHttpRequestnow outputs a warning to console if you perform a synchronous request while handling an
pagehideevent (bug 980902).
cookieproperty has moved from the
HTMLDocumentinterface to the
SVGElement.focus()methods now accept an optional object that may contain a boolean
preventScrolloption specifying whether or not to block the browser from scrolling the newly-focused element into view (bug 1374045).
- Firefox for Android no longer incorrectly sends a
resizeevent until after the first frame is painted; this improves web compatibility with sites that don't expect this event to occur (bug 1528052).
- The dispatching of events for non-primary mouse buttons has been made to more closely follow the specification; the
clickevent is no longer sent when non-primary buttons are clicked, instead using
auxclick. In addition,
dblclickno longer fires for non-primary buttons (bug 1379466).
- The proprietary
MouseEvent.mozPressureproperty has been deprecated, and will now trigger a warning in the console (bug 1165211).
Media, Web Audio, and WebRTC
- Due to changes in the Google Play store's policies, starting with Firefox 68 for Android, the OpenH264 codec used to handle AVC/H.264 video in WebRTC connections can no longer be downloaded and installed. Therefore, fresh installs of Firefox on Android devices no longer support AVC in WebRTC calls. If you upgrade from earlier versions of Firefox and already have the codec downloaded, it will continue to work. This does not affect other platforms. For more details, see this article on SUMO or bug 1548679.
- WebRTC has been updated to recognize that a
nullcandidate passed into the
icecandidateevent handler, indicating the receipt of a candidate, instead indicates that there are no further candidates coming; when this happens the ICE gathering (
iceGatheringState) state reaches
getSynchronizationSources()now support video tracks; previously they only worked on audio (bug 1534466).
- The Web Audio API
MediaStreamTrackAudioSourceNodeinterface is now supported, as is the method
RTCDataChannel.negotiatedis now implemented (bug 1529695).
MediaStreamAudioSourceNode()constructor has been updated to match the current specification's definition that the "first audio track" in the stream is the track whose ID comes first in lexicographical order (bug 1324548).
getUserMedia()may no longer be used from a non-secure context; attempting to do so now throws a
NotAllowedErrorexception. Secure contexts are those loaded using HTTPS, those located using the
file:///scheme, and those loaded from
localhost. For now, if you must, you can re-enable the ability to perform insecure calls to
getUserMedia()by setting the preference
- Removed the non-standard
XMLDocument.load()method (bug 332175).
- Removed the non-standard
XMLDocument.asyncproperty (bug 1328138).
tokenvalue has been removed (bug 1529595).
- The HTTP
Clear-Site-Dataheader no longer supports the
executionContextsdirective. This was removed due to problems with interactions between interconnections among different kinds of data at different points in the navigation process and the way the specification is designed. It has been proposed that this directive be removed from the specification for this reason, among others (bug 1548034).
require-sri-foris no longer supported due to concerns about its standardization status. It was previously available only behind a preference, which was off by default (bug 1386214).
- Due to CVE-2019-11730: Same-origin policy treats all files in a directory as having the same-origin, changes have been made so that Firefox now treats files in the same directory as being from different origins. This has a number of side-effects on what will work in documents loaded via file:// URLs (see bug file-fallout for useful background research). For example, workers can no longer be loaded.
WebDriver conformance (Marionette)
WebDriver:SwitchToWindowchanges the selection to a different window it now waits for its
activateevents before returning (bug 1335085).
- Fixed the
TypeError: this.tabModal is nullfailure, which sometimes appeared when interacting with modal dialogs or user prompts (bug 1538782)
- Disabled the feature to force unloading background tabs on low memory conditions, to prevent top-level browser contexts from magically disappearing (bug 1553748).
- Disabled priviledged content processes that caused HTTP authentication dialogs not to appear when navigating to a website after opening a new tab (bug 1558763).
Changes for add-on developers
- The The
proxy.unregister()functions have been deprecated and will be removed from Firefox 71 (bug 1545811).
incognito, has been added to the proxy.RequestDetails. object. When
true, it indicates that this was a private browsing request (bug 1545163).
- The webRequest.RequestFilter parameters can include an incognito parameter. If provided, requests that do not match the incognito state (
false) will be filtered out (bug 1548177).
cookieStoreId, representing the cookie store ID of the current context, has been added to the proxy.RequestDetails. object (bug 1545420).
- When an add-on attempts to add a bookmark folder to the root folder, the resulting error message is now much more intuitive (bug 1512171).
- The promise returned by
browser.tabs.duplicate()now resolves immediately, before the tabs are completely loaded (bug 1394376).
- Support has been added for chrome.storage.managed, allowing web extension settings to be implemented via enterprise policy (bug 1230802).
- There is now a Group Policy option to blacklist all extensions except the ones that have been whitelisted (bug 1522823).
- Firefox 67 for developers
- Firefox 66 for developers
- Firefox 65 for developers
- Firefox 64 for developers
- Firefox 63 for developers
- Firefox 62 for developers
- Firefox 61 for developers
- Firefox 60 for developers
- Firefox 59 for developers
- Firefox 58 for developers
- Firefox 57 for developers
- Firefox 56 for developers
- Firefox 55 for developers
- Firefox 54 for developers
- Firefox 53 for developers
- Firefox 52 for developers
- Firefox 51 for developers
- Firefox 50 for developers
- Firefox 49 for developers
- Firefox 48 for developers
- Firefox 47 for developers
- Firefox 46 for developers
- Firefox 45 for developers
- Firefox 44 for developers
- Firefox 43 for developers
- Firefox 42 for developers
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers