Chrome 128 中的新功能

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

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

换行方式:<ruby>

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

红宝石元素由两个主要部分组成:红宝石基底(主要文本)和红宝石文本(注释文本,用 元素标记)。

以前,如果红宝石基底或红宝石文本比整行长,那么它们会被单独封装,造成布局困难。

现在,Ruby 可换行,将封装的 Ruby 注解文本放在封装的基本文本上,以实现理想的文本渲染。

如需查看示例和更多信息,请访问换行符 <ruby> 和 CSS ruby-align 属性

Promise.try

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

实现此目的的方法之一是使用 Promise.resolve().then(f),但在本例中,f 会在下一个 tick 中异步运行,这是不必要的。

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

Promise.try 是实现这一目标的简单、直接的方法。它可让您启动一个 Promise 链来捕获 .catch 处理程序中的所有错误,而无需同时处理同步和异步异常流。

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

用于多笔手写的 PointerEvent.deviceProperties

对于支持手写的数字化仪,开发者无法区分其对应的两支钢笔。现有的 PointerEvent.pointerId 属性的实现方式有所不同,对于每次墨水笔触或与屏幕的互动,该属性不一定始终有效。

PointerEvent 接口现在经过扩展,包含一个新属性:deviceProperties。它包含 uniqueId 属性,该属性表示会话持久性、文档隔离的唯一标识符,开发者可以可靠地使用该标识符来识别与页面交互的每支笔。

例如,通过此更改后,您可以为与数字转换器交互的每种设备设置特定颜色或笔形状。

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

等等!

当然还有很多其他功能。

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

  • 现在,AudioContext 创建错误和音频呈现错误通过 AudioContext.onerror 进行报告。

  • DevTools Animations 面板现在可以拍摄动画,您可以实时修改 @keyframes

阅读完整的版本说明

深入阅读

本指南仅涵盖部分重要内容。请访问以下链接 Chrome 128 中的其他变更。

订阅

要随时掌握最新动态,请订阅 Chrome 开发者 YouTube 频道, ,每当我们发布新视频时,您都会收到电子邮件通知。

亲爱的 Adriana Jara,Chrome 128 一发布,我都会在这里向大家介绍 Chrome 的新变化!