Notification: Notification()-Konstruktor
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Der Notification()
-Konstruktor erstellt eine neue Instanz des Notification
-Objekts, das eine Benachrichtigung für den Benutzer darstellt.
Hinweis: Der Versuch, innerhalb des ServiceWorkerGlobalScope
eine Benachrichtigung mit dem Notification()
-Konstruktor zu erstellen, führt zu einem TypeError
. Verwenden Sie stattdessen ServiceWorkerRegistration.showNotification()
.
Syntax
new Notification(title)
new Notification(title, options)
Parameter
title
-
Definiert einen Titel für die Benachrichtigung, der oben im Benachrichtigungsfenster angezeigt wird.
options
Optional-
Ein Optionsobjekt, das benutzerdefinierte Einstellungen enthält, die Sie auf die Benachrichtigung anwenden möchten. Die möglichen Optionen sind:
actions
Optional-
Muss unbestimmt oder ein leeres Array sein.
actions
wird nur für persistente Benachrichtigungen unterstützt, die von einem Service Worker mittelsServiceWorkerRegistration.showNotification()
ausgelöst werden. badge
Optional-
Ein String, der die URL des Bildes enthält, das verwendet wird, um die Benachrichtigung darzustellen, wenn nicht genügend Platz für die Anzeige der eigentlichen Benachrichtigung vorhanden ist, z.B. in der Android-Benachrichtigungsleiste. Auf Android-Geräten sollte das Abzeichen Geräte bis zu einer 4x-Auflösung, etwa 96x96px, unterstützen, und das Bild wird automatisch maskiert.
body
Optional-
Ein String, der den Textkörper der Benachrichtigung darstellt, der unter dem Titel angezeigt wird. Standardmäßig ist dies der leere String.
data
Optional-
Beliebige Daten, die Sie mit der Benachrichtigung verknüpfen möchten. Dies kann jeder strukturierbar klonbare Datentyp sein. Der Standardwert ist
null
. dir
Optional-
Die Richtung, in der die Benachrichtigung angezeigt wird. Standardmäßig wird
auto
verwendet, was das Sprachverhalten des Browsers übernimmt, aber Sie können dieses Verhalten überschreiben, indem Sie die Werteltr
undrtl
einstellen (obwohl die meisten Browser diese Einstellungen zu ignorieren scheinen). icon
Optional-
Ein String, der die URL eines Symbols enthält, das in der Benachrichtigung angezeigt wird.
image
Optional-
Ein String, der die URL eines Bildes enthält, das in der Benachrichtigung angezeigt wird.
lang
Optional-
Die Sprache der Benachrichtigung, angegeben durch einen String, der einen Sprach-Tag gemäß RFC 5646: Tags for Identifying Languages (auch bekannt als BCP 47) darstellt. Siehe die Sitepoint-Seite ISO-2-Buchstaben-Sprachcodes für eine einfache Referenz. Der Standardwert ist der leere String.
renotify
Optional-
Ein boolescher Wert, der angibt, ob der Benutzer benachrichtigt werden sollte, nachdem eine neue Benachrichtigung eine alte ersetzt hat. Der Standardwert ist
false
, was bedeutet, dass der Benutzer nicht benachrichtigt wird. Wenntrue
, muss auchtag
gesetzt sein. requireInteraction
Optional-
Gibt an, dass eine Benachrichtigung aktiv bleiben soll, bis der Benutzer darauf klickt oder sie schließt, anstatt automatisch geschlossen zu werden. Der Standardwert ist
false
. silent
Optional-
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
true
gesetzt, ist die Benachrichtigung lautlos; wenn aufnull
(den Standardwert) gesetzt, werden die Standardeinstellungen des Geräts respektiert. tag
Optional-
Ein String, der ein identifizierendes Tag für die Benachrichtigung darstellt. Der Standardwert ist der leere String.
timestamp
Optional-
Ein Zeitstempel, angegeben als Unix-Zeit in Millisekunden, der die mit der Benachrichtigung verbundene Zeit darstellt. 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.
vibrate
Optional-
Ein Vibrationsmuster für die Vibrieren-Hardware des Geräts, um mit der Benachrichtigung auszulösen. Wenn angegeben, darf
silent
nichttrue
sein.
Rückgabewert
Eine Instanz des Notification
-Objekts.
Ausnahmen
TypeError
-
Wird ausgelöst, wenn:
- Der Konstruktor innerhalb des
ServiceWorkerGlobalScope
aufgerufen wird. - Die
actions
-Option angegeben ist und nicht leer ist. - Die
silent
-Optiontrue
ist und dievibrate
-Option angegeben ist. - Die
renotify
-Optiontrue
ist, aber dietag
-Option leer ist.
- Der Konstruktor innerhalb des
DataCloneError
DOMException
-
Wird ausgelöst, wenn das Serialisieren der
data
-Option aus irgendeinem Grund fehlschlägt.
Beispiele
Hier ist ein einfaches Beispiel, das nur eine Benachrichtigung anzeigt, wenn die Berechtigung bereits erteilt ist. Für vollständigere Beispiele siehe die Notification
-Seite.
if (Notification.permission === "granted") {
const notification = new Notification("Hi there!");
}
Spezifikationen
Specification |
---|
Notifications API Standard # dom-notification-notification |
Browser-Kompatibilität
BCD tables only load in the browser
Hinweise zu Chrome
Ab Chrome 49 funktionieren Benachrichtigungen im Inkognito-Modus nicht.
Chrome für Android wird einen TypeError
auslösen, wenn der Notification
-Konstruktor aufgerufen wird. Es unterstützt nur die Erstellung von Benachrichtigungen über einen Service Worker. Weitere Details finden Sie im Chromium-Issue-Tracker.