Firefox 65 面向開發者的釋出說明

本文件提供了 Firefox 65 中將影響開發者的變更資訊。Firefox 65 於 2019 年 1 月 29 日釋出。

Web 開發人員的變更

開發者工具

  • Flexbox 檢查器現在預設啟用。
  • JavaScript 偵錯程式已增加對 XHR 斷點的支援(Firefox bug 821610)。
  • 在輔助功能檢視器中,右鍵單擊輔助功能樹中的專案,可以將其以 JSON 格式列印到 JSON 檢視器。
  • 輔助功能選擇器的顏色對比度顯示已更新,如果文字背景複雜(例如,漸變或複雜影像),它會顯示一系列顏色對比度值。
  • 網路監視器的“請求頭”選項卡現在顯示所選請求的 Referrer Policy(Firefox bug 1496742)。
  • 在顯示堆疊跟蹤(例如,在控制檯日誌或 JavaScript 偵錯程式中)時,對框架方法的呼叫預設會被識別並摺疊,從而更容易定位到您的程式碼。
  • 與原生終端類似,您現在可以使用反向搜尋在 JavaScript 控制檯歷史記錄中查詢條目(Windows/Linux 上按 F9,或 macOS 上按 Ctrl + R,然後輸入搜尋詞,再按 Ctrl + R/Ctrl + S 切換結果)。
  • JavaScript 控制檯的 $0 快捷方式(引用頁面上當前檢查的元素)現在提供自動補全功能,例如,您可以輸入 $0.te 來獲取 $0.textContent 等屬性的自動補全建議。
  • 您在檢查器的“規則”檢視中所做的編輯現在列在“更改”面板中(Firefox bug 1503920)。

HTML

CSS

  • image-rendering 屬性的 crisp-edges 值現在已取消字首(Firefox bug 1496617)。

  • scrollbar-colorauto 值現在解析為 auto,而不是兩種顏色(Firefox bug 1501418)。

  • break-* 屬性已實現,並且舊版 page-break-* 屬性已別名為它們(Firefox bug 775618)。

  • overflow-wrap 屬性的 anywhere 值已實現(Firefox bug 1505786)。

  • 新的步進位置關鍵字 jump-startjump-endjump-nonejump-both(可在 steps() 計時函式中使用)已實現(Firefox bug 1496619)。這與 frames() 計時函式的移除同時發生,後者是以前實現此類功能的方式,現已棄用。

  • 為與其他瀏覽器相容,已新增一些新的 -webkit-appearance 值。特別是:

    • meter,現在用作 UA 樣式表中 <meter> 元素的預設值。現有值 meterbar 現在是 meter 的別名(Firefox bug 1501483)。
    • progress-bar,現在用作 UA 樣式表中 <progress> 元素的預設值。現有值 progressbar 現在是 progress-bar 的別名(Firefox bug 1501506)。
    • textarea,現在用作 UA 樣式表中 <textarea> 元素的預設值。現有值 textfield-multiline 現在是 textarea 的別名(Firefox bug 1507905)。
  • user-select 的行為已更改,使其更與其他瀏覽器保持一致(Firefox bug 1506547)。具體來說:

    • 在元素上設定 user-select: all 不再覆蓋在該元素的子元素上設定的其他 user-select 值。例如,在以下程式碼片段中:

      html
      <div style="-webkit-user-select: all">
        All
        <div style="-webkit-user-select: none">None</div>
      </div>
      

      設定了 none<div> 現在不可選。以前,此值會被父元素上設定的 all 值覆蓋。

    • 巢狀在 contenteditable 元素中的非 contenteditable 元素現在可選擇。

    • user-select 現在在 Shadow DOM 內部和外部表現一致。

    • 專有的 -moz-text 值已被移除。

  • CSS 環境變數(env() 函式)已實現(Firefox bug 1462233)。

移除

SVG

無更改。

JavaScript

API

新 API

DOM

DOM 事件

Web Workers

Fetch 和 Service Workers

媒體、Web Audio 和 WebRTC

Canvas 和 WebGL

移除

安全

網路

無更改。

外掛

無更改。

WebDriver 符合性 (Marionette)

API 更改

  • WebDriver:ElementSendKeys 現在對 <input type=file> 的可互動性檢查更加寬鬆,並允許這些元素隱藏而不再引發 not interactable 錯誤。如果需要嚴格的可互動性檢查,可以使用 strictFileInteractability 功能(Firefox bug 1502864)。

錯誤修復

  • 視窗操作命令 WebDriver:FullscreenWindowWebDriver:MinimizeWindowWebDriver:MaximizeWindowWebDriver:SetWindowRect 已變得更加穩定(Firefox bug 1492499)。這意味著在特殊情況下它們不再導致無限掛起,而是如果無法達到請求的視窗狀態,將在 5 秒後超時(Firefox bug 1521527)。
  • WebDriver:ElementClick 現在正確計算元素的中心點進行點選,這允許與 1x1 畫素尺寸的元素進行互動(Firefox bug 1499360)。

其他

  • 對於 unexpected alert open 錯誤,提供了更具資訊性的訊息(Firefox bug 1502268)。

其他

附加元件開發人員的變更

API 更改

標籤頁

  • tabs API 已增強,以支援標籤頁後繼者——標籤頁可以分配一個後繼者,即它關閉後將啟用的標籤頁的 ID(Firefox bug 1500479,另請參閱 這篇部落格文章 獲取更多資訊)。特別是:
    • tabs.Tab 型別現在有一個 successorId 屬性,可用於儲存/檢索標籤頁後繼者的 ID。
    • tabs.onActivated 事件監聽器的回撥有一個新的可用引數 previousTabId,其中包含先前啟用的標籤頁的 ID(如果它仍然開啟)。
    • tabs.update() 函式的 updateProperties 物件上有一個新的可選屬性 successorTabId,因此可用於更新它。
    • successorTabId 也由 tabs.get()tabs.query() 等函式返回。
    • 新函式 tabs.moveInSuccession() 允許批次操作標籤頁後繼者。

清單更改

無更改。

其他

另見