Notification: Eigenschaft navigate
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 schreibgeschützte Eigenschaft navigate der Schnittstelle Notification enthält die URL, zu der der User Agent navigiert, wenn der Benutzer die Benachrichtigung aktiviert.
Dies ist der aufgelöste Wert der URL, sofern eine URL in der Option navigate des Konstruktors Notification() oder von ServiceWorkerRegistration.showNotification() angegeben wurde.
Normalerweise löst das Aktivieren einer nicht dauerhaften Benachrichtigung das Ereignis click auf ihrem Notification-Objekt aus. Das Aktivieren einer dauerhaften Benachrichtigung löst dagegen das Ereignis notificationclick auf dem ServiceWorkerGlobalScope aus.
Wenn der Benutzer eine Benachrichtigung mit einer Navigations-URL aktiviert, navigiert der User Agent zur angegebenen URL, statt eines dieser Ereignisse auszulösen. So können Benachrichtigungen Benutzer zu einer bestimmten Seite führen, ohne dass ein Event-Handler erforderlich ist.
Wert
Ein String, der eine URL enthält, oder ein leerer String, wenn keine Navigations-URL festgelegt wurde.
Beispiele
>Den Wert der Eigenschaft navigate auslesen
Die Eigenschaft navigate gibt den aufgelösten URL-String zurück, wenn eine Navigations-URL festgelegt wurde, andernfalls einen leeren String.
const notification = new Notification("New message from Alice", {
body: "Hey, are you free for lunch?",
navigate: "/messages/alice",
});
// The property contains the resolved absolute URL
console.log(notification.navigate); // e.g. "https://example.com/messages/alice"
// Without a navigate option, the property is an empty string
const basic = new Notification("Hello!");
console.log(basic.navigate); // ""
navigate mit einem Service Worker verwenden
Bei dauerhaften Benachrichtigungen über einen Service Worker ermöglicht die Option navigate, dass beim Aktivieren der Benachrichtigung eine Seite geöffnet wird, ohne dass das Ereignis notificationclick behandelt werden muss.
// Inside a service worker
self.registration.showNotification("Order shipped!", {
body: "Your order #1234 has been shipped.",
navigate: "/orders/1234",
});
Spezifikationen
| Spezifikation |
|---|
| Notifications API> # dom-notification-navigate> |