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)。