PushEvent

这是 实验性技术
检查 浏览器兼容性表格 在生产中使用这之前。

PushEvent interface of the Push API represents a push message that has been received. This event is sent to the global scope of a ServiceWorker . It contains the information sent from an application server to a PushSubscription .

构造函数

PushEvent.PushEvent()
创建新的 PushEvent 对象。

特性

Inherits properties from its parent, ExtendableEvent . Additional properties:

PushEvent.data 只读
返回引用为 PushMessageData object containing data sent to the PushSubscription .

方法

Inherits methods from its parent, ExtendableEvent .

范例

The following example takes data from a PushEvent and displays it on all of the service worker's clients.

self.addEventListener('push', function(event) {
  if (!(self.Notification && self.Notification.permission === 'granted')) {
    return;
  }
  var data = {};
  if (event.data) {
    data = event.data.json();
  }
  var title = data.title || "Something Has Happened";
  var message = data.message || "Here's something you might want to check out.";
  var icon = "images/new-notification.png";
  var notification = new self.Notification(title, {
    body: message,
    tag: 'simple-push-demo-notification',
    icon: icon
  });
  notification.addEventListener('click', function() {
    if (clients.openWindow) {
      clients.openWindow('https://example.blog.com/2015/03/04/something-new.html');
    }
  });
});
					

规范

规范 状态 Comment
Push API
The definition of 'PushEvent' in that specification.
工作草案 初始定义。

浏览器兼容性

更新 GitHub 上的兼容性数据
Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
PushEvent
Chrome 42 Edge 16
Disabled
16
Disabled
Disabled From version 16: this feature is behind the Enable service workers preference.
17
Firefox 44
注意事项
44
注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 37 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 44
44
48
注意事项
Push enabled by default.
Opera Android 37 Safari iOS 不支持 No Samsung Internet Android 4.0
PushEvent() 构造函数
Chrome 42 Edge 16
Disabled
16
Disabled
Disabled From version 16: this feature is behind the Enable service workers preference.
17
Firefox 44
注意事项
44
注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 37 Safari 不支持 No WebView Android 不支持 No Chrome Android 42 Firefox Android 44
44
48
注意事项
Push enabled by default.
Opera Android 37 Safari iOS 不支持 No Samsung Internet Android 4.0
data
Chrome 57 Edge 16
Disabled
16
Disabled
Disabled From version 16: this feature is behind the Enable service workers preference.
17
Firefox 44
注意事项
44
注意事项
Extended Support Releases (ESR) before Firefox 78 ESR do not support service workers and the Push API.
IE 不支持 No Opera 44 Safari 不支持 No WebView Android 不支持 No Chrome Android 57 Firefox Android 44
44
48
注意事项
Push enabled by default.
Opera Android 43 Safari iOS 不支持 No Samsung Internet Android 4.0

图例

完整支持
完整支持
不支持
不支持
实验。期望将来行为有所改变。
实验。期望将来行为有所改变。
见实现注意事项。
用户必须明确启用此特征。
用户必须明确启用此特征。

另请参阅