- Chrome 现在全面支持 IndexedDB 2.0 标准,并提供新的架构管理、批量操作方法,以及更标准化的失败处理方式。
- 借助
display: fullscreen
,渐进式 Web 应用变得更加沉浸。 allow-top-navigation-by-user-activation
为沙盒化iframes
赋予了新权限- 还有更多!
想要查看完整的变更列表?查看 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 应用具有身临其境的感觉。

standalone
模式下从主屏幕启动的 PWA(中间),以及在 fullscreen
模式下从主屏幕启动的 PWA(右)。
从主屏幕启动应用时,所有非应用移动界面元素都会隐藏。
沙盒化 iframe 改进
Chrome 58 现在支持新的 iframe 沙盒关键字 allow-top-navigation-by-user-activation
。
当由用户互动触发时,此关键字可让沙盒化 iframe 浏览顶级页面,同时仍会阻止自动重定向。
等等!
当然,还有许多其他功能。
- 告别
clearfix
黑客攻击。现在,您可以使用display: flow-root
添加新的块格式上下文,而无需手动重置浮动和清除等多个布局属性。 - 借助
PointerEvents.getCoalescedEvents()
,您可以访问上次传送PointerEvent
以来的所有输入事件。非常适合您需要为绘图应用等内容保留精确的点历史记录时使用。 - 现在,您可以使用
data:
网址创建Workers
和SharedWorkers
,从而为它们提供不透明的来源,使使用Workers
进行开发变得更加安全。
以上仅列出了 Chrome 58 中针对开发者的部分变更。
如果您喜欢此视频,请观看设计师与开发者,这是一个全新的视频系列,旨在解决设计师和开发者在协作时遇到的各种挑战。
然后订阅我们的 YouTube 频道,这样每当我们发布新视频时,您就会收到电子邮件通知。
我是 Pete LePage,Chrome 59 发布后,我会立即为您介绍 Chrome 中的新变化!