徽章 API
注意: 此功能在Web Workers中可用。
徽章 API 为 Web 开发者提供了一种在文档或应用程序上设置徽章的方法,作为通知状态已更改的提示,而无需显示更令人分心的通知。一个常见的用例是具有消息功能的应用程序,它在应用程序图标上显示徽章,以显示新消息已到达。
概念和用法
Web 开发者经常更新文档的 favicon 或标题以指示状态。徽章 API 提供了一种更优雅的方式来显示状态,它提供了一种对用户代理有意义的方法,因此可以以与其余 UI 匹配的方式显示。
徽章类型
徽章有两种类型
- 文档徽章,通常显示在浏览器标签中,靠近或位于页面图标附近。
- 应用程序徽章,与已安装 Web 应用程序的图标相关联。这些徽章可能显示在应用程序图标上的停靠栏、架子或主屏幕上,具体取决于所使用的设备。
徽章状态
设置徽章
使用方法setAppBadge()
(用于已安装的应用程序)设置徽章。如果未将任何参数传递给这些方法,则徽章值为 flag。用户代理将显示其通知徽章,例如图标上的彩色圆圈。
这些方法还可以传递一个参数contents
,它应该是一个数字。然后,此数字将作为徽章的一部分显示。用户代理可能会以某种方式更改此值。例如,如果您传递一个非常大的数字,例如 4000,用户代理可能会在徽章中将其显示为 99+。用户代理也可能会忽略此数据,而是显示一个标记。
清除徽章
使用clearAppBadge()
方法清除徽章。这些方法不接受任何参数,并将徽章设置为nothing
值。此外,将0
值传递给setAppBadge()
将把徽章设置为nothing
并清除徽章。
接口
无。
对 Navigator 接口的扩展
-
在与该应用程序关联的图标上设置徽章。
-
清除与该应用程序关联的图标上的徽章。
对 WorkerNavigator 接口的扩展
-
在与该应用程序关联的图标上设置徽章。
-
清除与该应用程序关联的图标上的徽章。
示例
要在当前应用程序上设置值为 12 的通知徽章
js
navigator.setAppBadge(12);
要在当前应用程序上清除通知徽章
js
navigator.clearAppBadge();
规范
规范 |
---|
徽章 API # setappbadge-method |
浏览器兼容性
BCD 表格仅在浏览器中加载