Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Notification

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Hinweis: Diese Funktion ist in Web Workers verfügbar.

Die Notification-Schnittstelle der Notifications API wird verwendet, um Desktop-Benachrichtigungen für Benutzer zu konfigurieren und anzuzeigen.

Das Erscheinungsbild und die konkreten Funktionen dieser Benachrichtigungen unterscheiden sich je nach Plattform. Im Allgemeinen bieten sie jedoch eine Möglichkeit, Benutzern asynchron Informationen bereitzustellen.

EventTarget Notification

Konstruktor

Notification()

Erstellt eine neue Instanz des Notification-Objekts.

Statische Eigenschaften

Erbt außerdem Eigenschaften von der übergeordneten Schnittstelle EventTarget.

Notification.permission Schreibgeschützt

Ein String, der die aktuelle Berechtigung zum Anzeigen von Benachrichtigungen angibt. Mögliche Werte sind:

  • denied — Der Benutzer lehnt die Anzeige von Benachrichtigungen ab.
  • granted — Der Benutzer stimmt der Anzeige von Benachrichtigungen zu.
  • default — Die Entscheidung des Benutzers ist unbekannt. Der Browser verhält sich daher so, als wäre der Wert denied.
Notification.maxActions Schreibgeschützt

Die maximale Anzahl von Aktionen, die vom Gerät und vom User Agent unterstützt werden.

Instanzeigenschaften

Erbt außerdem Eigenschaften von der übergeordneten Schnittstelle EventTarget.

Notification.actions Schreibgeschützt

Das Aktions-Array der Benachrichtigung, wie im options-Parameter des Konstruktors angegeben.

Notification.badge Schreibgeschützt

Ein String mit der URL eines Bildes, das die Benachrichtigung darstellt, wenn nicht genügend Platz vorhanden ist, um die Benachrichtigung selbst anzuzeigen, beispielsweise in der Android-Benachrichtigungsleiste. Auf Android-Geräten sollte das Badge für Geräte mit bis zu vierfacher Auflösung ausgelegt sein, also etwa 96 × 96 px. Das Bild wird automatisch maskiert.

Notification.body Schreibgeschützt

Der Text der Benachrichtigung, wie im options-Parameter des Konstruktors angegeben.

Notification.data Schreibgeschützt

Gibt einen strukturierten Klon der Daten der Benachrichtigung zurück.

Notification.dir Schreibgeschützt

Die Textrichtung der Benachrichtigung, wie im options-Parameter des Konstruktors angegeben.

Notification.icon Schreibgeschützt

Die URL des Bildes, das als Symbol der Benachrichtigung verwendet wird, wie im options-Parameter des Konstruktors angegeben.

Notification.image Schreibgeschützt

Die URL eines Bildes, das als Teil der Benachrichtigung angezeigt wird, wie im options-Parameter des Konstruktors angegeben.

Notification.lang Schreibgeschützt

Der Sprachcode der Benachrichtigung, wie im options-Parameter des Konstruktors angegeben.

Notification.navigate Schreibgeschützt

Die Navigations-URL der Benachrichtigung. Wenn sie festgelegt ist, führt das Aktivieren der Benachrichtigung zu dieser URL, anstatt das Ereignis click oder notificationclick auszulösen.

Notification.renotify Schreibgeschützt

Gibt an, ob der Benutzer benachrichtigt werden soll, wenn eine neue Benachrichtigung eine ältere ersetzt.

Notification.requireInteraction Schreibgeschützt

Ein boolescher Wert, der angibt, ob eine Benachrichtigung aktiv bleiben soll, bis der Benutzer darauf klickt oder sie schließt, anstatt automatisch geschlossen zu werden.

Notification.silent Schreibgeschützt

Gibt an, ob die Benachrichtigung stumm sein soll, also unabhängig von den Geräteeinstellungen weder Töne noch Vibrationen ausgegeben werden sollen.

Notification.tag Schreibgeschützt

Die ID der Benachrichtigung (falls vorhanden), wie im options-Parameter des Konstruktors angegeben.

Notification.timestamp Schreibgeschützt

Gibt den Zeitpunkt an, zu dem eine Benachrichtigung erstellt wird oder für den sie relevant ist (in der Vergangenheit, Gegenwart oder Zukunft).

Notification.title Schreibgeschützt

Der Titel der Benachrichtigung, wie im ersten Parameter des Konstruktors angegeben.

Notification.vibrate Schreibgeschützt

Gibt ein Vibrationsmuster an, das Geräte mit Vibrationshardware ausgeben sollen.

Statische Methoden

Erbt außerdem Methoden von der übergeordneten Schnittstelle EventTarget.

Notification.requestPermission()

Fordert vom Benutzer die Berechtigung an, Benachrichtigungen anzuzeigen.

Instanzmethoden

Erbt außerdem Methoden von der übergeordneten Schnittstelle EventTarget.

Notification.close()

Schließt eine Benachrichtigungsinstanz programmgesteuert.

Ereignisse

Erbt außerdem Ereignisse von der übergeordneten Schnittstelle EventTarget.

click

Wird ausgelöst, wenn der Benutzer auf die Benachrichtigung klickt.

close

Wird ausgelöst, wenn der Benutzer die Benachrichtigung schließt.

error

Wird ausgelöst, wenn bei der Benachrichtigung ein Fehler auftritt.

show

Wird ausgelöst, wenn die Benachrichtigung angezeigt wird.

Beispiele

Gehen Sie von folgendem einfachen HTML aus:

html
<button>Notify me!</button>

Eine Benachrichtigung kann wie folgt gesendet werden. Das Beispiel zeigt einen recht ausführlichen und vollständigen Code: Er prüft zunächst, ob Benachrichtigungen unterstützt werden und ob für die aktuelle Origin bereits die Berechtigung zum Senden von Benachrichtigungen erteilt wurde. Falls erforderlich, fordert er die Berechtigung an, bevor er die Benachrichtigung sendet.

js
document.querySelector("button").addEventListener("click", notifyMe);

function notifyMe() {
  if (!("Notification" in window)) {
    // Check if the browser supports notifications
    alert("This browser does not support desktop notification");
  } else if (Notification.permission === "granted") {
    // Check whether notification permissions have already been granted;
    // if so, create a notification
    const notification = new Notification("Hi there!");
    // …
  } else if (Notification.permission !== "denied") {
    // We need to ask the user for permission
    Notification.requestPermission().then((permission) => {
      // If the user accepts, let's create a notification
      if (permission === "granted") {
        const notification = new Notification("Hi there!");
        // …
      }
    });
  }

  // At last, if the user has denied notifications, and you
  // want to be respectful there is no need to bother them anymore.
}

Wir zeigen auf dieser Seite kein Live-Beispiel mehr, da Chrome und Firefox nicht mehr zulassen, dass Benachrichtigungsberechtigungen aus <iframe>s mit einer anderen Origin angefordert werden. Andere Browser werden voraussichtlich folgen. Ein funktionierendes Beispiel finden Sie in unserem To-do-Listen-Beispiel (siehe auch die laufende Anwendung).

Hinweis: Im obigen Beispiel erstellen wir Benachrichtigungen als Reaktion auf eine Benutzerinteraktion (einen Klick auf eine Schaltfläche). Das ist nicht nur eine bewährte Vorgehensweise — Sie sollten Benutzer nicht mit Benachrichtigungen überhäufen, denen sie nicht zugestimmt haben. Browser werden künftig Benachrichtigungen, die nicht durch eine Benutzerinteraktion ausgelöst wurden, ausdrücklich unterbinden. Firefox tut dies beispielsweise bereits seit Version 72.

Spezifikationen

Spezifikation
Notifications API
# notification

Browser-Kompatibilität

Siehe auch