PushEvent
Базовая версия 2023
Новое
С марта 2023 года эта функция работает на последних версиях устройств и браузеров. Возможно, эта функция не будет работать на старых устройствах или браузерах.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Примечание: Эта функция доступна только в рабочих потоках.
Интерфейс PushEvent из API push-уведомлений представляет сообщение push-уведомления, которое было получено. Данное событие отправляется в глобальную область видимости глобальной области ServiceWorker. Оно содержит информацию, отправленную сервером приложения на PushSubscription.
Конструктор
PushEvent()-
Создаёт новый объект
PushEvent.
Свойства экземпляра
Наследует свойства от родительского класса ExtendableEvent. Дополнительные свойства:
-
PushEvent.dataТолько для чтения -
Возвращает ссылку на объект
PushMessageData, содержащий данные, отправленные наPushSubscription.
Методы экземпляра
Наследует методы от родительского класса ExtendableEvent.
Примеры
В следующем примере данные из PushEvent отображаются на всех клиентах, работающих с рабочим потоком.
self.addEventListener("push", (event) => {
if (!(self.Notification && self.Notification.permission === "granted")) {
return;
}
const data = event.data?.json() ?? {};
const title = data.title || "Something Has Happened";
const message =
data.message || "Here's something you might want to check out.";
const icon = "images/new-notification.png";
const notification = new self.Notification(title, {
body: message,
tag: "simple-push-demo-notification",
icon,
});
notification.addEventListener("click", () => {
clients.openWindow(
"https://example.blog.com/2015/03/04/something-new.html",
);
});
});
Спецификации
| Спецификация |
|---|
| Push API # pushevent-interface |
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
PushEvent |
42 | 17 | 44 | 37 | 16Уведомления поддерживаются в macOS Ventura и более поздних версиях. |
42 | 48 | 37 | 16.4Уведомления поддерживаются в веб-приложениях, сохранённых на главном экране. |
4.0 | Нет |
PushEvent |
42 | 17 | 44 | 37 | 16Уведомления поддерживаются в macOS Ventura и более поздних версиях. |
42 | 48 | 37 | 16.4Уведомления поддерживаются в веб-приложениях, сохранённых на главном экране. |
4.0 | Нет |
data |
50 | 17 | 44 | 37 | 16Уведомления поддерживаются в macOS Ventura и более поздних версиях. |
50 | 48 | 37 | 16.4Уведомления поддерживаются в веб-приложениях, сохранённых на главном экране. |
5.0 | Нет |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PushEvent