NotificationEvent - Web API 接口参考 编辑

传递给 onnotificationclick 处理程序的参数的NotificationEvent接口,该接口表示通知单击事件,该事件在 ServiceWorkerGlobalScopeServiceWorker

该接口继承自ExtendableEvent接口。

建设者

NotificationEvent()
创建一个新NotificationEvent对象。

物产

从其祖先Event继承属性

NotificationEvent.notification 只读
返回一个Notification对象,该对象表示单击以触发事件的通知。
NotificationEvent.action 只读
返回用户单击的通知按钮的字符串ID。如果用户在除操作按钮之外的其他位置单击了通知,或者该通知没有按钮,则此值返回一个空字符串。

方法

从其父项ExtendableEvent继承方法

ExtendableEvent.waitUntil()

延长事件的寿命。告诉浏览器工作正在进行中。

self.addEventListener('notificationclick', function(event) {
  console.log('On notification click: ', event.notification.tag);
  event.notification.close();

  // This looks to see if the current is already open and
  // focuses if it is
  event.waitUntil(clients.matchAll({
    type: "window"
  }).then(function(clientList) {
    for (var i = 0; i < clientList.length; i++) {
      var client = clientList[i];
      if (client.url == '/' && 'focus' in client)
        return client.focus();
    }
    if (clients.openWindow)
      return clients.openWindow('/');
  }));
});

技术指标

规范状态评论
Notifications API
NotificationEvent
Living Standard生活水平。

注意:此接口在Notifications API中指定,但是可以通过 ServiceWorkerGlobalScope访问。

浏览器兼容性

BCD tables only load in the browser

此页面上的兼容性表是根据结构化数据生成的。如果您想贡献数据,请查看https://github.com/mdn/browser-compat-data并向我们​​发送请求请求。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:114 次

字数:4033

最后编辑:7年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文