Benachrichtigung: Notification() Konstruktor - Web-APIs | MDN
Eingeschränkt verfügbar
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.
Der Notification() Konstruktor erstellt eine neue Instanz des Notification Objekts, das eine Benutzerbenachrichtigung darstellt.
Der Versuch, eine Benachrichtigung im ServiceWorkerGlobalScope mit dem Notification() Konstruktor zu erstellen, führt zu einem TypeError.
Verwenden Sie stattdessen ServiceWorkerRegistration.showNotification().
Sie müssen zuerst die Erlaubnis einholen, bevor Sie Benachrichtigungen anzeigen können, indem Sie Notification.requestPermission() verwenden.
Die Erlaubnis kann möglicherweise nicht erteilt werden, beispielsweise wenn die Seite im privaten Browsing-Modus ist.
Dieser Konstruktor wirft einen TypeError, wenn er in fast allen mobilen Browsern aufgerufen wird, und es ist unwahrscheinlich, dass sich dies ändert, da Webseiten auf mobilen Geräten fast nie "im Hintergrund ausgeführt werden", was der Hauptanwendungsfall für Benachrichtigungen ist.
Stattdessen müssen Sie einen Service Worker registrieren und ServiceWorkerRegistration.showNotification() verwenden.
Siehe Chrome issue für weitere Informationen.
Syntax
js
new Notification(title)
new Notification(title, options)
Parameter
title-
Definiert einen Titel für die Benachrichtigung, der oben im Benachrichtigungsfenster angezeigt wird.
optionsOptional-
Ein Optionsobjekt, das alle benutzerdefinierten Einstellungen enthält, die Sie auf die Benachrichtigung anwenden möchten. Die möglichen Optionen sind:
actionsOptional-
Muss nicht angegeben oder ein leeres Array sein.
actionswird nur für persistente Benachrichtigungen unterstützt, die von einem Service Worker mitServiceWorkerRegistration.showNotification()ausgelöst werden. badgeOptional-
Ein String, der die URL des Bildes enthält, das die Benachrichtigung darstellt, wenn nicht genug Platz zum Anzeigen der Benachrichtigung selbst ist; beispielsweise die Android-Benachrichtigungsleiste. Auf Android-Geräten sollte das Badge Geräte bis zu 4-facher Auflösung, etwa 96x96px, berücksichtigen, und das Bild wird automatisch maskiert.
bodyOptional-
Ein String, der den Text der Benachrichtigung darstellt, der unter dem Titel angezeigt wird. Der Standard ist der leere String.
dataOptional-
Beliebige Daten, die Sie mit der Benachrichtigung verknüpfen möchten. Dies kann eine strukturierbar klonbare Datenart sein. Der Standard ist
null. dirOptional-
Die Richtung, in der die Benachrichtigung angezeigt wird. Der Standard ist
auto, was einfach das Sprachverhalten des Browsers übernimmt, aber Sie können dieses Verhalten überschreiben, indem Sie die Werteltrundrtlfestlegen (obwohl die meisten Browser diese Einstellungen scheinbar ignorieren). iconOptional-
Ein String, der die URL eines Symbols enthält, das in der Benachrichtigung angezeigt wird.
imageOptional-
Ein String, der die URL eines Bildes enthält, das in der Benachrichtigung angezeigt wird.
langOptional-
Die Sprache der Benachrichtigung, angegeben als String, der einen BCP 47 Sprach-Tag darstellt. Der Standard ist der leere String.
-
Ein String, der eine URL enthält, zu der navigiert wird, wenn der Benutzer die Benachrichtigung aktiviert. Wenn eingestellt, navigiert der Benutzeragent zu dieser URL anstatt das
clickEreignis auszulösen. Der Wert wird relativ zur Basis-URL der Seite analysiert. SieheNotification.navigatefür weitere Informationen. renotifyOptional-
Ein boolescher Wert, der angibt, ob der Benutzer benachrichtigt werden soll, nachdem eine neue Benachrichtigung eine alte ersetzt hat. Der Standard ist
false, was bedeutet, dass sie nicht benachrichtigt werden. Wenntrue, muss auchtaggesetzt sein. requireInteractionOptional-
Gibt an, dass eine Benachrichtigung aktiv bleiben soll, bis der Benutzer sie anklickt oder schließt, anstatt automatisch geschlossen zu werden. Der Standardwert ist
false. silentOptional-
Ein boolescher Wert, der angibt, ob die Benachrichtigung lautlos sein soll, d.h. es sollten unabhängig von den Geräteeinstellungen keine Geräusche oder Vibrationen ausgegeben werden. Wenn auf
truegesetzt, ist die Benachrichtigung lautlos; wenn aufnullgesetzt (der Standardwert), werden die Standardeinstellungen des Geräts beachtet. tagOptional-
Ein String, der ein identifizierendes Tag für die Benachrichtigung darstellt. Der Standard ist der leere String.
timestampOptional-
Ein Zeitstempel, angegeben als Unix-Zeit in Millisekunden, die die Zeit darstellt, die mit der Benachrichtigung verknüpft ist. Dies könnte in der Vergangenheit liegen, wenn eine Benachrichtigung für eine Nachricht verwendet wird, die nicht sofort zugestellt werden konnte, weil das Gerät offline war, oder in der Zukunft für ein Meeting, das bald beginnt.
vibrateOptional-
Ein Vibrationsmuster für die Vibrationshardware des Geräts, die mit der Benachrichtigung ausgegeben wird. Wenn angegeben, darf
silentnichttruesein.
Rückgabewert
Eine Instanz des Notification Objekts.
Ausnahmen
TypeError-
Wird ausgelöst, wenn:
- Der Konstruktor innerhalb des
ServiceWorkerGlobalScopeaufgerufen wird. - Die
actionsOption angegeben ist und nicht leer ist. - Die
silentOptiontrueist und dievibrateOption angegeben ist. - Die
renotifyOptiontrueist, aber dietagOption leer ist.
- Der Konstruktor innerhalb des
DataCloneErrorDOMException-
Wird ausgelöst, wenn die Serialisierung der
dataOption aus irgendeinem Grund fehlschlägt.
Beispiele
Hier ist ein einfaches Beispiel, um nur dann eine Benachrichtigung anzuzeigen, wenn die Erlaubnis bereits erteilt ist.
Für vollständigere Beispiele siehe die Notification Seite.
js
if (Notification.permission === "granted") {
const notification = new Notification("Hi there!");
}
Spezifikationen
| Spezifikation |
|---|
| Notifications API # dom-notification-notification |
Browser-Kompatibilität
Siehe auch
Help improve MDN
Erfahren Sie, wie Sie beitragen können Diese Seite wurde automatisch aus dem Englischen übersetzt.