Chrome 126

稳定版发布日期:2024 年 6 月 11 日

除非另有说明,否则以下变更适用于 Android、ChromeOS、Linux、macOS 和 Windows 的 Chrome 126 稳定渠道版本。

CSS

同源导航的跨文档视图过渡

以前,您必须将网站重新架构为 SPA,才能使用 View Transitions API。现在,情况不再如此。现在,同源导航默认启用视图过渡。您可以在两个同源的不同文档之间创建视图过渡。

如需启用跨文档视图过渡,两端都需要选择启用。为此,请使用 @view-transition at 规则,并将 navigation 描述符设置为 auto。

@view-transition {
  navigation: auto;
}

跨文档视图过渡使用与同文档视图过渡相同的构建块和原则。系统会捕获应用了 view-transition-name 的元素,您可以使用 CSS 动画自定义动画。

使用 View Transition API 实现平滑过渡 | 跟踪 bug #1372584 | ChromeStatus.com 条目 | 规范

Web API

Gamepad API trigger-rumble 扩展程序

扩展 GamepadHapticActuator 接口,以便在 Web 上为兼容的游戏手柄公开触发器震动功能。此扩展程序将允许利用 Gamepad API 的 Web 应用也振动配备此功能的游戏手柄设备的触发器。

跟踪 bug #40834175 | ChromeStatus.com 条目 | 规范

ChromeOS 标签页式 Web 应用

在独立窗口中,PWA 一次只能打开一个页面。 某些应用希望用户同时打开多个页面。标签页模式会向 ChromeOS 中的独立 Web 应用添加标签栏,以便同时打开多个标签页。

此功能添加了新的 "tabbed" 显示模式和新的清单字段,以便自定义标签栏。

跟踪 bug #40598974 | ChromeStatus.com 条目 | 规范

GeolocationCoordinates 和 GeolocationPosition 的 toJSON() 方法

向 GeolocationCoordinates 和 GeolocationPosition 接口添加了 .toJSON() 方法。这样就可以使用 JSON.stringify() 序列化这些对象。

ChromeStatus.com 条目

WebGLObject Web IDL 超级接口

此功能会在公开 WebGL API 的相同上下文(主线程和 worker)中公开 WebGLObject 类型。

ChromeStatus.com 条目 | 规范

重新启用 CloseWatcher API 并关闭 <dialog> 和 popover="" 的请求

CloseWatcher API 允许以统一的方式处理关闭请求,例如桌面平台上的 ESC 键或 Android 上的返回手势或按钮。此功能最初在 Chrome 120 中发布,但由于与 <dialog> 发生意外交互而被停用。 在 Chrome 126 中,我们对其行为进行了一些改进,以最大限度地减少其中出现的问题,并重新启用了该功能。

演示 | 跟踪 bug #1171318 | ChromeStatus.com 条目

Attribution Reporting API:attributionsrc 请求的引荐来源网址政策

attributionsrc 请求的处理方式与页面上的其他子资源相同。

之前,当通过在各种 HTML 元素(例如 <img>、<script>、<a> 或 window.open)中使用 attributionsrc 归因来调用该 API 时,它会忽略在 <html> 元素上设置的资源级引荐来源网址政策属性。

做出此项更改后,attributionsrc 请求现在将应用在 <img>、<script>、<a> 或 window.open 中设置的相同资源级引荐来源网址政策。

这样一来,广告技术平台可以更好地控制是否要对 attributionsrc 请求中的引荐来源网址信息施加更多或更少的限制。

ChromeStatus.com 条目

媒体

MediaRecorder 的 MP4 容器支持

添加了对使用 MediaRecorder 将音频和视频多路复用到 MP4 容器中的支持。

MediaRecorder | ChromeStatus.com 条目 | 规范

OpusEncoderConfig signal 和 application 参数

OpusEncoderConfig.signal 和 OpusEncoderConfig.application 参数直接映射到实现特定的编码器旋钮。这些功能允许 Web 作者提供有关正在编码的数据类型以及数据使用场景的提示。

signal 可以是 "auto"、"music"、"voice" 之一。它会配置编码器,以便在对指定类型的数据进行编码时实现最佳性能。application 可以是 "voip"、"audio"、"lowdelay" 之一。它会将编码器配置为优先考虑语音清晰度、忠实再现原始输入或尽可能缩短延迟时间。

ChromeStatus.com 条目 | 规范

JavaScript

visualViewport onscrollend 支持

scrollend JavaScript 事件会触发,以指示滚动操作已结束。

visualViewport 接口包含一个 onscrollend 事件处理脚本,该脚本应在 visualViewport 上的滚动操作结束时调用。Chrome 已支持通过 visualViewport.addEventListener("scrollend") 添加 scrollend 事件监听器。这样一来,您还可以使用 visualViewport.onscrollend 添加事件监听器。

跟踪 bug #325307785 | ChromeStatus.com 条目

隐私权

将 navigator.cookieEnabled 与规范保持一致

navigator.cookieEnabled 目前表示“用户代理是否尝试在给定上下文中处理 Cookie”。Chrome 的一项变更(作为第三方 Cookie 弃用 [3PCD] 的一部分发布)将导致其指示是否可以访问未分区 Cookie(导致其在大多数跨网站 iframe 中返回 false)。我们应该恢复 navigator.cookieEnabled 的先前行为,即仅指示是否为网站启用了 Cookie,并依靠跨供应商函数 document.hasStorageAccess 来指示是否可以访问未分区 Cookie。

跟踪 bug #335553590 | ChromeStatus.com 条目 | 规范

无障碍

支持 Windows 上的界面自动化无障碍框架

Microsoft Windows 上的现代辅助应用使用该平台的界面自动化无障碍框架与其他应用的用户界面进行互操作。到目前为止,Chromium 一直支持较旧的 Microsoft Active Accessibility (MSAA) 和 IAccessible2 (IA2) 框架来实现此目的,但这导致了 Windows 上的无障碍工具出现问题。

为了解决此问题,Microsoft 与 Chrome 团队合作,直接在 Windows 上支持界面自动化 (UIA) 框架,从而使无障碍工具能够更轻松地与浏览器通信。从 Chrome 126 版开始,我们将逐步向稳定版推出。这将使语音操控能够在所有基于 Chromium 的浏览器中运行,并提升所有基于 UIA 的无障碍工具(例如讲述人和放大镜)的用户体验。

Windows 上的 UIA 支持简介

新的源试用

FedCM 作为 Storage Access API 的信任信号

通过将先前的 FedCM 授权作为自动批准存储空间访问请求的有效理由,协调 FedCM 和 Storage Access API。

当用户授权在依赖方 (RP) 上使用其身份与第三方身份提供方 (IdP) 进行身份验证时,许多 IdP 需要第三方 Cookie 才能正确且安全地运行。此提案旨在通过更新 Storage Access API (SAA) 权限检查,以私密且安全的方式满足该要求,不仅接受存储空间访问提示给出的权限授予,还接受 FedCM 提示给出的权限授予。

此机制的一个关键属性是,仅在 RP 通过 FedCM 权限政策明确允许的情况下才授予权限,从而对 RP 实施逐帧控制,并防止 IdP 进行超出 FedCM 已授予功能的被动监控。

源试用 | 说明 | ChromeStatus.com 条目

选择退出媒体预览

此反向源试用会将网站排除在媒体预览功能发布范围之外。

当网站请求摄像头和麦克风权限时,Chrome 会提供摄像头和麦克风输入的实时预览。这些信息也会显示在网站的 pageinfo 中。

此外,拥有多台设备的用户将能够在系统请求权限时选择摄像头和麦克风,除非网站已通过 getUserMedia() 请求特定设备。

源试用 | 跟踪 bug #330762482 | ChromeStatus.com 条目

FedCM:Continuation API、Parameters API、Fields API、多个 configURL、自定义账号标签

开发者可以开始参与桌面版 FedCM 功能包(可包含授权)的源试用。该软件包包含 FedCM Continuation API、Parameter API、Fields API、多个 configURL 和自定义账号标签。这样可以实现类似于 OAuth 授权流程的体验,其中涉及 IdP 提供的权限对话框。

跟踪 bug #40262526 | ChromeStatus.com 条目

网页嵌入式权限控制

提供一个与权限流程交互的新 HTML 元素。

目前,权限提示直接由 JavaScript 触发,而用户代理没有任何强烈的用户意图信号。通过让用户使用内容内元素触发权限流程,可以改善用户的权限提示体验,并为网站提供从“已拒绝”权限状态恢复的途径。

ChromeStatus.com 条目

弃用和移除

弃用并移除导入断言“assert”语法

弃用并移除 assert 关键字,改为在导入属性语法中使用新的 with 关键字。

也就是说,import m from 'foo' assert { type: 'json' } 现在会抛出 SyntaxError,开发者必须改为使用 import m from 'foo' with { type: 'json' }。

ChromeStatus.com 条目 | 规范

深入阅读

想要查找更多参考信息?请参阅以下其他资源。

下载 Google Chrome

下载 Android、桌面或 iOS 版 Chrome。