Firefox 136 開發者發行說明

本文提供有關 Firefox 136 中影響開發者的變更資訊。Firefox 136 於 2025 年 3 月 4 日釋出。

Web 開發人員的變更

HTML

  • autocorrect 全域性屬性允許在可編輯文字元素中進行自動更正,包括:大多數型別的文字 <input> 元素、<textarea> 元素以及設定了 contenteditable 屬性的元素。具體的自動更正行為取決於使用者代理和底層作業系統。(Firefox bug 1927977)。
  • contenteditable 全域性屬性的 plaintext-only 值表示該元素可編輯;富文字格式被停用,貼上文字中的任何格式都會自動被移除(Firefox bug 1922724)。

CSS

JavaScript

HTTP

  • 現在,在頁面重新整理後重定向到新頁面的請求中會發送 Referer HTTP 標頭(如果 Referrer-Policy 允許),並且導航後 document.referrer 將設定為 referrer URL。頁面重新整理可能由 Refresh 響應標頭或標記中等效的 <meta> 觸發(例如 <meta http-equiv="refresh" content="3;url=https://www.mozilla.org" />)。請注意,同頁面重新整理被視為導航到頁面片段的同頁面導航:由於頁面未重新請求,因此不會發送 Referer。(Firefox bug 1928291)。

API

媒體、WebRTC 和 Web Audio

WebDriver 一致性 (WebDriver BiDi, Marionette)

通用

  • Firefox 現在可以更高效地處理 RemoteAgent 的 WebSocket 埠衝突。如果透過 --remote-debugging-port 命令列引數指定的埠在 5 秒內無法獲取,例如當另一個 Firefox 程序正在使用它時,Firefox 現在將關閉而不是掛起(Firefox bug 1927721)。

  • 透過 Marionette 中的 WebDriver:Navigate 命令或 WebDriver BiDi 中的 browsingContext.navigate 觸發的使用 HTTP 方案的導航將不再自動升級到 HTTPS。這些請求現在將按預期保留在 HTTP 上(Firefox bug 1943551)。

WebDriver BiDi

  • session.subscribe 命令現在返回一個訂閱 ID,該 ID 可以與 session.unsubscribe 配合使用,以精確地定位與原始訂閱相同的先前訂閱事件和上下文。這有助於防止存在多個訂閱(例如限於特定選項卡的訂閱)時出現意外的副作用(Firefox bug 1938576)。

    注意:先前透過名稱和上下文移除事件的邏輯已被棄用,並將在未來版本中移除。

  • script.addPreloadScript 命令添加了對 userContexts 欄位的支援,允許客戶端指定指令碼應始終自動載入到哪些使用者上下文(容器)中,包括在此類指定使用者上下文內開啟的任何新瀏覽上下文(Firefox bug 1940927)。

  • 當上下文關閉時,browsingContext.contextDestroyed 事件現在返回一個完全序列化的瀏覽上下文樹,包括其所有子上下文(Firefox bug 1860955)。

附加元件開發人員的變更

實驗性 Web 功能

這些功能是 Firefox 136 中新增的,但預設停用。要試用它們,請在 about:config 頁面上搜索相應的首選項並將其設定為 true。您可以在 實驗性功能 頁面上找到更多此類功能。

  • CSS hyphenate-limit-chars 屬性layout.css.hyphenate-limit-chars.enabledhyphenate-limit-chars CSS 屬性用於專門指定斷字的最小詞長以及連字元前後的字元數。(Firefox bug 1521723)。
  • Error.captureStackTrace()javascript.options.experimental.error_capture_stack_traceError.captureStackTrace() 靜態方法將堆疊跟蹤資訊安裝到提供的物件上,作為 Error.stack 屬性。它的主要用例是在不派生自 Error 介面的自定義錯誤物件上安裝堆疊跟蹤。(Firefox bug 1886820)。
  • Clear-Site-Data: cacheprivacy.clearSiteDataHeader.cache.enabledClear-Site-Data 標頭可與 cache* 指令一起使用,以清除瀏覽器快取。(Firefox bug 1942272)。
  • 用於 SVG 動畫的 SVG <discard> 元素svg.discard.enabled<discard> SVG 元素允許開發者指定一個觸發器,例如 SVG 載入到 DOM 中的經過時間或特定動畫的結束,在該觸發器處,指定的元素及其子元素應從 DOM 中移除。這允許 SVG 檢視器透過丟棄不再需要的動畫元素來節省記憶體。(Firefox bug 1069931)。
  • SVG 路徑 API 方法dom.svg.pathSegment.enabled。現在支援 SVGPathElement 介面的 getPathData()setPathData()getPathSegmentAtLength() 方法。這些方法提供了一種方便的方式來處理 SVG 路徑資料,而不是解析原始字串資料。(Firefox bug 1934525)。