Firefox 144 for developers (Stable) Release Notes
本文档提供了关于 Firefox 144 中影响开发人员的更改信息。Firefox 144 已于 2025 年 10 月 14 日发布。
Web 开发人员的变更
HTML
- 现在支持
<button>元素的command和commandfor属性。command属性允许您定义要执行的操作,commandfor属性允许您将按钮与命令作用于的另一个元素关联起来。命令可以是预定义值(如close)或您定义的 自定义值。(Firefox bug 1983523)。
MathML
移除
- 已移除对已弃用的 MathML STIXGeneral 字体支持。
mathml.stixgeneral_operator_stretching.disabled设置也已移除。(Firefox bug 1336058)。
CSS
- 现在支持用于单页应用程序(SPA)的视图转换的 CSS 功能。这提供了一种为视图转换动画的各个部分设置样式的方法。(Firefox bug 1985809)。这些功能包括:
JavaScript
- 现在支持
Map.prototype.getOrInsert()、Map.prototype.getOrInsertComputed()、WeakMap.prototype.getOrInsert()和WeakMap.prototype.getOrInsertComputed()实例方法。所有这些方法在键存在时返回与指定键对应的键值。如果键不存在,getOrInsert()会插入并返回键和一个给定的默认值,而getOrInsertComputed()会插入并返回通过提供的回调函数计算出的值。(Firefox bug 1979917)。
API
- 现在支持
ScreenOrientation接口的lock()和unlock()方法,适用于 Android 和 Windows 平板电脑。(Firefox bug 1983483)。 - 现在支持 View Transition API 用于 SPA(单页应用程序)。这提供了一种轻松创建不同网站视图之间动画过渡的机制。(Firefox bug 1985809)。
- 现在实现了 CSS 对象模型(CSSOM)的
CSSStyleProperties接口(此接口已从非标准接口CSS2Properties重命名)。新接口已存在但尚未被使用。(Firefox bug 1919582)。 PerformanceEventTiming接口的interactionId属性(interactionId)是一个唯一标识符,用于关联属于单个用户交互的相关事件。这可用于计算 Interaction to next paint 指标,有助于分析页面生命周期内用户交互的响应性。(Firefox bug 1956809)。
DOM
- 现在支持
Element、DocumentFragment和Document接口上的moveBefore()方法。(Element,DocumentFragment和Document接口)。这允许将对象的直接子元素移动到另一个子元素之前。与Node.insertBefore()不同,移动的元素会保留其状态。(Firefox bug 1983688)。
媒体、WebRTC 和 Web Audio
- 跨域
<iframe>现在需要用户交互(粘性激活)或显式权限才能使用window.top.location重定向顶层页面。有关更多信息,请参阅 跨域框架中的顶层导航。(Firefox bug 1419501)。 RTCDataChannel实例现在是 可转移对象,因此可以传递给 worker。(Firefox bug 1209163)。- 现在支持
RTCDataChannel接口上的closing事件(closingevent)和onclosing()事件处理程序。(Firefox bug 1611953)。 MediaDevices接口的getUserMedia()和getDisplayMedia()方法(getUserMedia()和getDisplayMedia())现在支持resizeMode约束(resizeModeconstraint)。此约束允许开发人员请求与分辨率和帧率等其他约束匹配的视频,即使基础硬件不支持请求的约束。然后,浏览器可能会裁剪、缩小或降低从摄像头捕获的视频的帧率,或者缩小(但不能裁剪)从屏幕或窗口捕获的视频。(Firefox bug 1286945)。
移除
- 已移除以下已弃用和非标准的事件:
Document接口的afterscriptexecute事件(afterscriptexecuteevent)和beforescriptexecute事件(beforescriptexecuteevent),以及Element接口的afterscriptexecute事件(afterscriptexecuteevent)和beforescriptexecute事件(beforescriptexecuteevent)。(Firefox bug 1584269)。
WebDriver 一致性 (WebDriver BiDi, Marionette)
WebDriver BiDi
-
已实现新的
browsingContext.downloadWillBegin事件,当新下载被触发时会发出此事件,无论是通过单击带有download属性的链接,还是响应带有指示文件附件的Content-Disposition头的网络请求。(Firefox bug 1874365)。 -
已实现新的
emulation.setScreenOrientationOverride命令,允许客户端模拟不同的屏幕方向。此命令不仅限于移动设备,也适用于桌面应用程序。(Firefox bug 1974167)。 -
已实现新的
emulation.setTimezoneOverride命令,允许客户端模拟特定的时区设置。(Firefox bug 1978027)。 -
增强了
emulation.setLocaleOverride命令,使其能够将指定的设置也应用于先前通过 WebDriver BiDi 创建的沙盒。(Firefox bug 1983807)。 -
修复了通过
emulation.setLocaleOverride设置的区域设置覆盖有时会在同一进程中的不同浏览上下文之间错误共享的 bug。(Firefox bug 1980211)。 -
增强了
browsingContext.navigate命令,以避免由导航已提交后发生的重定向或中断引起的NS_BINDING_ABORTED错误。(Firefox bug 1914407)。
Marionette
- 已恢复 Marionette 中几个 WebDriver 经典命令使用的
Scroll Into ViewWebDriver 算法,使其始终使用instant滚动行为。这撤销了 Firefox 97 中引入的将行为更改为auto的更改。恢复操作解决了滚动使用smooth行为的元素时可能出现的竞争条件。(Firefox bug 1986238)。
附加组件开发人员的变更
- 在
"content_scripts"manifest 键("content_scripts"manifest key)的 CSS 注入中,添加了指定样式来源的能力,通过scripting.registerContentScripts()中的scripting.RegisteredContentScript上的cssOrigin属性,以及contentScripts.register中的cssOrigin属性(scripting.registerContentScripts(),scripting.RegisteredContentScript,contentScripts.register)。样式来源可以是"user",用于将 CSS 添加为用户样式表;或者"author",用于将其添加为作者样式表。默认值为"author"来源。这些属性不区分大小写。此外,scripting.insertCSS()的origin属性值现在不区分大小写。(Firefox bug 1679997)。 - 为
storage.local和storage.managed添加了对getBytesInUse()的支持。(Firefox bug 1385832)。
实验性 Web 功能
这些功能将在 Firefox 144 中发布,但默认禁用。要试用它们,请在 about:config 页面上搜索相应的首选项并将其设置为 true。您可以在 实验性功能页面上找到更多此类功能。
-
datetime-local 时间选择器:
dom.forms.datetime.timepicker。HTML datetime-local 输入元素(
<input type="datetime-local">)现在包含一个时间选择器。(Firefox bug 1726108)。