Suche…


Syntax

  • Notification.requestPermission ( Rückruf )
  • Notification.requestPermission (). Then ( Rückruf , rejectFunc )
  • neue Benachrichtigung ( Titel , Optionen )
  • Benachrichtigung .close ()

Bemerkungen

Die Benachrichtigungs-API wurde entwickelt, um dem Browser den Client zu benachrichtigen.

Die Unterstützung durch Browser kann eingeschränkt sein. Auch die Unterstützung durch das Betriebssystem kann eingeschränkt sein.

Die folgende Tabelle gibt einen Überblick über die frühesten Browserversionen, die Benachrichtigungen unterstützen.

Chrom Kante Feuerfuchs Internet Explorer Oper Opera Mini Safari
29 14 46 keine Unterstützung 38 keine Unterstützung 9.1

Anfordern der Erlaubnis, Benachrichtigungen zu senden

Wir verwenden Notification.requestPermission , um den Benutzer zu fragen, ob er Benachrichtigungen von unserer Website erhalten möchte.

Notification.requestPermission(function() {
    if (Notification.permission === 'granted') {
        // user approved.
        // use of new Notification(...) syntax will now be successful
    } else if (Notification.permission === 'denied') {
        // user denied.
    } else { // Notification.permission === 'default'
        // user didn’t make a decision.
        // You can’t send notifications until they grant permission.
    }
});

Seit Firefox 47 Die Methode .requestPermission kann auch ein Versprechen zurückgeben, wenn die Entscheidung des Benutzers über die Erteilung der Berechtigung abgewickelt wird

Notification.requestPermission().then(function(permission) {
    if (!('permission' in Notification)) {
        Notification.permission = permission;
    }
    // you got permission !
    }, function(rejection) {
    // handle rejection here.
    }
);

Benachrichtigungen senden

Nachdem der Benutzer eine Anfrage zum Senden von Benachrichtigungen genehmigt hat, können wir dem Benutzer eine einfache Benachrichtigung mit der Aufforderung " Hallo" senden:

new Notification('Hello', { body: 'Hello, world!', icon: 'url to an .ico image' });

Dies wird eine Benachrichtigung wie diese senden:

Hallo

Hallo Welt!

Eine Benachrichtigung schließen

Sie können eine Benachrichtigung mit der .close() -Methode schließen.

let notification = new Notification(title, options);
// do some work, then close the notification
notification.close()

setTimeout Funktion setTimeout können Sie die Benachrichtigung in der Zukunft automatisch schließen.

let notification = new Notification(title, options);
setTimeout(() => {
    notification.close()
}, 4000);

Der obige Code erzeugt eine Benachrichtigung und schließt diese nach 4 Sekunden.

Benachrichtigungsereignisse

Die Benachrichtigungs-API-Spezifikationen unterstützen zwei Ereignisse, die von einer Benachrichtigung ausgelöst werden können.

  1. Das click

Dieses Ereignis wird ausgeführt, wenn Sie auf den Benachrichtigungstext klicken (mit Ausnahme des schließenden X und der Benachrichtigungs-Konfigurationsschaltfläche).

Beispiel:

notification.onclick = function(event) {
    console.debug("you click me and this is my event object: ", event);
}
  1. Das error

Die Benachrichtigung wird dieses Ereignis immer dann auslösen, wenn ein Fehler auftritt, z. B. dass keine Anzeige möglich ist

notification.onerror = function(event) {
    console.debug("There was an error: ", event);
}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow