Firefox 141 for developers 發行說明

本文件提供了關於 Firefox 141 中影響開發者的變更資訊。Firefox 141 於 2025 年 7 月 22 日 釋出。

Web 開發人員的變更

HTML

CSS

JavaScript

HTTP

  • Clear-Site-Data 響應標頭中的 "cache" 指令現在會清除 bfcache(後退/前進快取)。這允許網站確保,如果使用者登出後進行後退導航,之前會話中可見的私人資訊不會暴露(Firefox bug 1930501)。

API

  • PointerEvent 介面的 persistentDeviceId 屬性現在得到支援。它為與螢幕互動的每個指向裝置提供一個在會話期間持久存在的唯一 ID。它提供了一種可靠的方式來標識同時與螢幕互動的多個指向裝置(例如筆)(Firefox bug 1968400)。
  • IntersectionObserver 介面的 scrollMargin 屬性現在得到支援。它在觀察器根元素內的所有巢狀 滾動容器 上添加了一個邊距,這允許觀察器在目標元素滾動到檢視內之前(或之後)進行觀察,而不僅僅是在它們首次可見時(Firefox bug 1860030)。
  • HTMLDialogElement 介面的 closedBy 屬性以及 <dialog> 元素的相應 closedby 屬性現已支援。開發者可以使用這些屬性來指定關閉對話方塊的機制,例如使用者在對話方塊外部的互動(“淺層關閉”)或程式化關閉(Firefox bug 1964078)。
  • HTMLElement 介面的 showPopover()togglePopover() 方法現在接受 options.source 引數,而 togglePopover() 還接受 forceoptions.force 引數(Firefox bug 1936411)。(Firefox bug 1936411
    • options.source 建立了一個彈出視窗與其呼叫者(控制元件元素)之間的關係。與等效的宣告式屬性 popovertarget 一樣,這使得彈出視窗對鍵盤使用者更易於訪問(請參閱 Popover 可訪問性功能)。它還在兩者之間建立了一個隱式錨點引用,這使得彈出視窗相對於其控制元件的定位更加自然(請參閱 Popover 錨點定位)。
    • togglePopover()forceoptions.force 引數可用於強制彈出視窗開啟或關閉,並且如果彈出視窗已處於強制狀態,則會被忽略。與 showPopover()hidePopover() 不同,如果彈出視窗已處於目標狀態,此操作不會引發異常。
  • WebGPU API 現在在 Windows 上完全支援,除 service worker 外的所有上下文中。這允許開發者使用使用者計算機的 圖形處理單元 (GPU) 執行計算和圖形渲染(Firefox bug 1972486)。

WebDriver 一致性 (WebDriver BiDi, Marionette)

通用

  • 從 Firefox 中移除了實驗性的 CDP(Chrome DevTools Protocol)實現。因此,我們也移除了對 remote.active-protocols 偏好的支援。有關此主題的更多詳細資訊,請參閱 Firefox Developer ExperienceFirefox bug 1882096)。
  • 移除了臨時的 remote.system-access-check.enabled 偏好設定。在測試期間,此偏好設定不再用於停用在使用 WebDriver 訪問 Firefox 的 chrome 作用域時進行的系統訪問檢查(Firefox bug 1955007)。

WebDriver BiDi

  • browser.createUserContext 命令添加了對 "proxy" 引數的支援。這允許客戶端在建立使用者上下文(即 Firefox Container)時設定 "direct" 或 "manual" 代理。稍後將新增對其他代理型別的支援(Firefox bug 1967653)。
  • 實現了新的 browsingContext.historyUpdated 事件,當在網頁上下文中呼叫 history.pushState()history.replaceState()document.open() 時會發出此事件(Firefox bug 1906051)。
  • 改進了嘗試永久安裝未打包的、未簽名的 Web 擴充套件時顯示的錯誤訊息(Firefox bug 1958723)。
  • 更新了 browsingContext.navigatebrowsingContext.reload 命令,以便在使用 "none" 的 "wait" 條件時等待 browsingContext.navigationCommitted 事件(Firefox bug 1967469)。
  • 更新了 WebDriver BiDi cookie API,以支援 "sameSite" 屬性中的 "default" 值,以解決平臺 API 近期的更改,這些更改將不再允許在 HTTP 頁面上設定具有 "sameSite=None" 和 "secure=false" 的 cookie(Firefox bug 1971488)。

Marionette

  • 為避免對每次呼叫 WebDriver:ElementClick(即使沒有導航發生)產生不必要的 200 毫秒延遲,我們將潛在導航的 click-and-wait 超時時間縮短至 50 毫秒以保持向後相容。該 超時時間現在也可以配置,使用者也可以透過偏好設定 完全停用Firefox bug 1972271)。
  • Marionette 中增加了與 CHIPS cookie(具有獨立分割槽狀態的 Cookie)互動的支援(Firefox bug 1972830)。

附加元件開發人員的變更

實驗性 Web 功能

這些功能將在 Firefox 141 中釋出,但預設情況下是停用的。要嘗試使用它們,請在 about:config 頁面上搜索相應的偏好設定並將其設定為 true。您可以在 實驗性功能 頁面上找到更多此類功能。