Chrome 132 Beta 版

發布日期:2024 年 11 月 13 日

除非另有說明,否則下列變更適用於 Android、ChromeOS、Linux、macOS 和 Windows 的最新 Chrome 公開測試版頻道版本。如要進一步瞭解這裡列出的功能,請點選提供的連結,或參閱 ChromeStatus.com 的清單。截至 2024 年 11 月 13 日,Chrome 132 為 Beta 版。您可以前往 Google.com 的電腦版網站或 Android 版 Google Play 商店下載最新版本。

CSS

此版本新增了兩項 CSS 功能。

CSS 錨點定位:允許在 insetmargin 屬性中使用 anchor-size()

anchor-size() 原本只允許用於大小屬性。規格已變更,以便在內嵌和邊界中使用 anchor-size()

CSS 橫向書寫模式

支援 writing-mode CSS 屬性的 sideways-rlsideways-lr 關鍵字。sideways-rlsideways-lr 可用於垂直書寫非中日韓文字。與 vertical-rlvertical-lr 不同,這些字元不具備有利於 CJK 語言的行為。

網站 API

擷取所有畫面

使用 getAllScreensMedia() 擷取目前連結至裝置的所有畫面。

多次呼叫 getDisplayMedia() 需要多次使用者手勢,每次都需要使用者選擇下一個畫面,而且無法保證應用程式已選取所有畫面。getAllScreensMedia() 方法可改善上述所有問題。

這項功能僅適用於電腦版 YouTube。

對話方塊切換事件

瞭解 <dialog> 元素何時開啟和關閉很有幫助,而 popover 已具有 ToggleEvent,會在彈出式視窗開啟或關閉時調度。先前,如要偵測 <dialog> 何時開啟,您必須註冊變異觀察器來檢查是否已開啟,但這項工作相當繁瑣,因此使用事件會更簡單。

這項異動會納入 popover 調度的相同 ToggleEvent,但適用於 <dialog> 元素:當 showModalshow 遭到呼叫時,<dialog> 會使用 newState=open 調度 ToggleEvent。當 <dialog> 關閉 (使用表單、按鈕或 closewatcher) 時,應透過 newState=closed 調度 ToggleEvent

元素擷取

假設您透過現有方式取得影片 MediaStreamTrack 來啟動分頁擷取功能,元素擷取功能可讓您變更追蹤,只擷取 DOM 的子樹狀結構,從特定元素開始。

這個 API 與 Region Capture API 有些相似,但可為應用程式提供更大的彈性,因為遮蔽和被遮蔽的內容都會從擷取內容中排除。

FedCM 授權功能

這項服務會將幾項功能整合在一起,讓身分提供者 (IdP) 用於實作授權流程,例如讓使用者授予第三方 (RP) 日曆存取權。詳細說明:

  • IdP 必須能夠針對權限 (接續 API) 顯示自訂提示。
  • RP 需要可擴充的方式,向 IdP 傳達所需的存取權 (參數 API)。
  • 在這種情況下,RP 要求的資訊 (fields API) 不同,因此需要能夠自訂或隱藏提及 IdP 分享「姓名、電子郵件地址和個人資料相片」的文字。
  • IdP 可能會使用其他端點來實作授權流程 (多個 configURL)。
  • 某些帳戶可能只符合其中一種驗證和授權流程的資格,因此需要在兩個流程中顯示不同的帳戶 (帳戶標籤 API)。

FedCM Mode API 和 Use Other Account API

FedCM 的兩個新擴充功能:

  • 模式active 模式可讓網站在按鈕點選 (例如點選「Sign-in to IdP」按鈕) 時呼叫 FedCM,這需要 FedCM 確保一律會以可見的使用者介面回應。在啟用模式下呼叫 FedCM API,可在使用者登出時,將使用者導向登入身分識別資訊提供者 (IdP)。此外,由於活動模式是在明確的使用者手勢中呼叫,因此與採用被動模式的 UI 相比 (不需要使用者手勢,且可在頁面載入時呼叫),使用者介面會更顯眼 (例如,置中和模態)。
  • 使用其他帳戶:透過這個擴充功能,IdP 可讓使用者登入其他帳戶。

擷取:Request.bytes()Response.bytes()

bytes() 方法新增至 RequestResponse 介面,該方法會傳回以 Uint8Array 解析的承諾。雖然 RequestResponse 都有 arrayBuffer() 方法,但您無法直接從緩衝區讀取資料。您必須建立 Uint8Array 等檢視畫面才能讀取。bytes() 方法可改善取得要求和回應主體的操作體驗。

Android 和 WebView 的檔案系統存取權

這個 API 可讓開發人員建構功能強大的應用程式,透過裝置的檔案系統與使用者裝置上的其他 (非網頁) 應用程式互動。使用者授予網頁應用程式存取權後,這個 API 就會允許應用程式直接讀取或儲存使用者選取的檔案和資料夾。除了讀取及寫入檔案之外,這個 API 還可開啟目錄並列舉其內容,以及在 IndexedDB 中儲存檔案和目錄句柄,以便日後重新存取相同內容。

檔案系統存取權在 Chrome 86 的電腦版上推出,在 Chrome 132 中則可在 Android 和 WebView 上使用。

忽略 localhost 的 Strict-Transport-Security

Strict-Transport-Security (STS) 回應標頭可能會對本機主機網路伺服器造成問題,因為 STS 會在主機上套用至所有通訊埠。這會導致網頁開發人員在本機測試時發生相容性問題。這也影響使用軟體套件的使用者,因為這些軟體套件通常會出於臨時性質啟動 localhost 網路伺服器。例如,從網路登入到本機軟體套件的授權權杖通訊。如果某個本機事件監聽器在 localhost 回應上設定 Strict-Transport-Security,則會套用至所有後續的 localhost 要求,不論通訊埠為何。

Chrome 132 會忽略本機網址回應中的 Strict-Transport-Security 標頭,以解決這個問題。

可透過鍵盤聚焦的捲動容器

這項功能 (從 Chrome 130 開始) 的推出作業因無障礙功能倒退而停止。這個問題已修正,這項功能會繼續透過 Chrome 132 推出。

Private State Token API 權限政策預設許可清單萬用字元

Private State Token API 的存取權受到權限政策功能的限制。Chrome 132 更新了 private-state-token-issuanceprivate-state-token-redemption 功能的預設許可清單,從 self 改為 * (萬用字元)。

PushMessageData::bytes()

PushMessageData 介面模仿 Body 介面,後者在今年稍早已根據「API 通常應以 Uint8Arrays 形式販售位元組緩衝區」的原則,透過新的 bytes() 方法進行修正。Chrome 132 會在 PushMessageData 介面上提供 bytes() 存取子,藉此與 Body 介面重新對齊。

sharedStorage.selectURL 中的已儲存查詢

sharedStorage.selectURL() 現在允許以逐頁方式儲存及重複使用查詢,其中兩個逐頁載入預算會在第一次執行儲存查詢時收費,但不會在同一頁面載入期間執行儲存查詢的後續作業時收費。如要完成這項操作,請在 selectURL() 的選項中使用 savedQuery 參數,該參數會命名查詢。

針對非活動文件中的彈出式視窗和對話方塊擲回例外狀況

先前在非活動文件中,對位於彈出式視窗或對話方塊的 showPopover()showModal() 呼叫會失敗,且不會顯示任何訊息。系統不會擲回任何例外狀況,但由於文件處於非活動狀態,因此不會顯示彈出式視窗或對話方塊。在 Chrome 132 中,這些情況現在會擲回 InvalidStateError

WebAuthn Signal API

允許 WebAuthn 信任方將現有憑證的資訊傳送回憑證儲存空間提供者,以便更新或移除提供者和系統 UI 中的錯誤或已撤銷的憑證。

進一步瞭解 Chrome 電腦版密碼金鑰的 Signal API

WebGPU:32 位元浮點紋理混合

float32-blendable GPU 功能可讓格式為 r32floatrg32floatrgba32float 的 GPU 紋理可進行混合。

WebGPU:從 GPUDevice 公開 GPUAdapterInfo

GPUDevice adapterInfo 屬性會公開與 GPUAdapter 物件相同的 GPUAdapterInfo

WebGPU:紋理檢視畫面用法

在 WebGPU 紋理檢視畫面建立作業中新增選用欄位,以便要求來源紋理的使用標記子集。

根據預設,紋理檢視用途會繼承來源紋理,但有些檢視格式可能與完整的繼承用途不相容。在建立紋理檢視畫面時新增用途欄位,可讓使用者要求來源紋理的用途子集,這些用途必須與檢視畫面格式相符,並符合使用者對紋理檢視畫面的預期用途。

WebGPU 實作項目也可以在使用具有更多專用用途旗標的檢視畫面時,最佳化低層資源建立作業,並提升效能。

新的來源試用

在 Chrome 132 中,您可以選擇採用下列新的來源試用功能

Document-Isolation-Policy

Document-Isolation-Policy 可讓文件為自身啟用 crossOriginIsolation,無須部署 COOP 或 COEP,也不受網頁的 crossOriginIsolation 狀態影響。這項政策由程序隔離功能支援。此外,文件非 CORS 跨來源子資源將在沒有憑證的情況下載入,或需要有 CORP 標頭。

使用魔術註解明確提供編譯提示

這項功能可讓您附加資訊,說明應在 JavaScript 檔案中急速剖析及編譯哪些函式。系統會將資訊編碼為魔術註解。

淘汰和移除

這個版本的 Chrome 會淘汰及移除下列項目。請造訪 ChromeStatus.com,查看已淘汰、目前淘汰和先前淘汰的功能清單。

這個版本的 Chrome 移除了兩項功能。

navigator.storage 是為了儲存空間壓力事件而建立的 EventTarget,但從未通過原型設計階段。這個無效程式碼已遭移除,因此 navigator.storage 不會再延伸 EventTarget

移除附帶前置字串的 HTMLVideoElement 全螢幕 API

附帶前置字串的 HTMLVideoElement 全螢幕 API 已從 Chrome 淘汰

這些 API 已由 Element.requestFullscreen() API 取代,該 API 於 2018 年首次在 Chrome 71 中推出,且不含前置字串。截至 2024 年,大多數瀏覽器已支援無前置字元的 API 好幾年了。

Chrome 132 已從 HTMLVideoElement 中移除以下項目:

  • webkitSupportsFullscreen 屬性。
  • webkitDisplayingFullscreen 屬性。
  • webkitEnterFullscreen() 方法。
  • webkitExitFullscreen() 方法。請注意,FullScreen 中的「S」大小寫不同。
  • webkitEnterFullScreen() 方法。
  • webkitExitFullScreen() 方法。

這些方法現在只會用於新版 API 的別名。這些功能的使用率在過去幾年持續下滑。