Chrome 58 的新功能

想要查看完整的变更列表?查看 Chromium 源代码库更改列表

我是 Pete LePage。我们来深入了解一下 Chrome 58 中面向开发者的新功能!

IndexedDB 2.0

网站数据库的结构对性能有很大影响,而且可能很难更改。IndexedDB 2.0 改变了这一点。

  • 现在,在重构后,object 存储区和 indexes 可以就地重命名。
  • 二进制键允许使用更自然的键,而无需担心性能惩罚。
  • 借助 getKey()openKeyCursor()continuePrimaryKey() 方法,可以更轻松地检索数据。

而且,对于整个数据集的批量恢复,不再需要使用 getAll()getAllKey() 的光标。

全屏渐进式 Web 应用

从 Android 主屏幕启动渐进式 Web 应用时,这些应用会以类似独立应用的模式启动,此模式会隐藏万能搜索框。这有助于打造富有吸引力的用户体验,并为内容腾出屏幕空间。

不过,对于游戏、视频播放器或其他富媒体内容等沉浸感更强的体验,系统栏等移动界面元素仍然可能会造成干扰,并占用您可能需要的宝贵像素。

现在,您可以在Web 应用清单中设置 display: fullscreen,让渐进式 Web 应用具有身临其境的感觉。

从主屏幕启动的 PWA(左)、在 standalone 模式下从主屏幕启动的 PWA(中间),以及在 fullscreen 模式下从主屏幕启动的 PWA(右)。

从主屏幕启动应用时,所有非应用移动界面元素都会隐藏。

沙盒化 iframe 改进

Chrome 58 现在支持新的 iframe 沙盒关键字 allow-top-navigation-by-user-activation

当由用户互动触发时,此关键字可让沙盒化 iframe 浏览顶级页面,同时仍会阻止自动重定向。

等等!

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

  • 告别 clearfix 黑客攻击。现在,您可以使用 display: flow-root 添加新的块格式上下文,而无需手动重置浮动和清除等多个布局属性。
  • 借助 PointerEvents.getCoalescedEvents(),您可以访问上次传送 PointerEvent 以来的所有输入事件。非常适合您需要为绘图应用等内容保留精确的点历史记录时使用。
  • 现在,您可以使用 data: 网址创建 WorkersSharedWorkers,从而为它们提供不透明的来源,使使用 Workers 进行开发变得更加安全。

以上仅列出了 Chrome 58 中针对开发者的部分变更。

如果您喜欢此视频,请观看设计师与开发者,这是一个全新的视频系列,旨在解决设计师和开发者在协作时遇到的各种挑战。

然后订阅我们的 YouTube 频道,这样每当我们发布新视频时,您就会收到电子邮件通知。

我是 Pete LePage,Chrome 59 发布后,我会立即为您介绍 Chrome 中的新变化!