Chrome 128 中的新功能

以下是您需要知晓的相关信息:

我是 Adriana Jara。我们来深入了解一下 Chrome 128 中面向开发者的新功能。

可换行 <ruby>

<ruby> 元素可增强文本呈现效果,尤其是对于东亚语言。借助它,您可以在基本文本上方或旁边显示发音注释或其他补充信息。

ruby 元素由两个主要部分组成:ruby 基准(即主要文本)和 ruby 文本(即使用该元素标记的注释文本)。

以前,如果 ruby-base 或 ruby-text 比整行更长,则会单独换行,这会导致布局问题。

现在,可换行 Ruby 会将换行 Ruby 注释文本放在换行基本文本上方,以实现理想的文本呈现效果。

如需查看示例和了解详情,请参阅可换行 <ruby> 和 CSS ruby-align 属性

Promise.try

Promise.try 可让您更轻松地使用 Promise 处理错误。有一个模式,其中包含一个函数 f。此函数可以是异步函数,也可以返回 Promise。如需使用 Promise 语义来处理这两种情况下的错误,您需要将函数封装在 Promise 中。

实现此目的的一种方法是使用 Promise.resolve().then(f),但在这种情况下,f 会在下一个计时周期中不必要地异步运行。

为避免此问题,您需要使用 new Promise(resolve => resolve(f())),但这完全不符合人体工学。

Promise.try 是一种简单直接的方式来实现相同的目的。借助它,您可以启动一个 Promise 链,用于捕获 .catch 处理程序中的所有错误,而无需同时处理同步和异步异常流。

如需了解详情,请参阅 Promise.try 文档

适用于多触控笔手写的 PointerEvent.deviceProperties

开发者无法区分支持触控笔的数字化板上的两支独立触控笔。现有的 PointerEvent.pointerId 属性以不同的方式实现,并且并不总是针对每次手写笔触或与屏幕的互动保持不变。

PointerEvent 接口现已扩展为包含一个新属性:deviceProperties。它包含属性 uniqueId,该属性表示会话级永久性、文档隔离的唯一标识符,开发者可以可靠地使用该标识符来标识与页面互动的各个触控笔。

例如,通过这项更改,您可以为与数字化器互动的每台设备设置特定颜色或触控笔形状。

如需了解如何开始使用指针事件,请参阅指明前进方向

等等!

当然,还有许多其他功能。

  • CSS zoom 属性现已与最新标准保持一致。

  • AudioContext 创建和音频渲染错误现在通过 AudioContext.onerror 报告。

  • DevTools 动画面板现在可以捕获动画,您可以实时修改 @keyframes

阅读完整的版本说明

深入阅读

本文仅介绍了一些主要亮点。如需了解 Chrome 128 中的其他变更,请访问以下链接。

订阅

如需及时了解最新动态,请订阅 Chrome 开发者 YouTube 频道,这样每当我们发布新视频时,您就会收到电子邮件通知。

我是 Adriana Jara,Chrome 128 发布后,我会立即为您介绍 Chrome 中的新变化!