Signatur
Beschreibung
Die Instanz-Eigenschaft title einer Notification gibt den Titel als string zurück, also genau den Text, der beim Erzeugen als erster Parameter an new Notification(title, options) bzw. an ServiceWorkerRegistration.prototype.showNotification(title, options) übergeben wurde. Das System zeigt diesen Titel meist fett oben in der Benachrichtigung an.
Gebraucht wird die Eigenschaft vor allem in Event-Handlern wie click, close oder show, wenn man wissen will, welche Benachrichtigung ausgelöst hat, etwa für Logging, Analyse oder zum Weiterleiten auf die passende Seite. In Service Workern erhält man über event.notification.title im notificationclick-Event Zugriff darauf.
Die Eigenschaft lässt sich nur lesen. Wer den Titel ändern will, muss eine neue Benachrichtigung erzeugen. Mit derselben tag-Option ersetzt diese die alte, statt sich zusätzlich daneben einzureihen.
Rückgabewert
Beispiele
Titel einer neuen Benachrichtigung auslesen
const zeigeHinweis = async () => {
const erlaubnis = await Notification.requestPermission();
if (erlaubnis !== 'granted') return;
const n = new Notification('Neue Nachricht', {
body: 'Anna: Treffen wir uns um 15 Uhr?',
tag: 'chat-anna'
});
console.log(n.title);
};
document.querySelector('#notify').addEventListener('click', zeigeHinweis);
Titel im click-Handler für Logging nutzen
const n = new Notification('Build fehlgeschlagen', {
body: 'Pipeline #482 ist rot.',
data: { url: '/ci/482' }
});
n.addEventListener('click', (event) => {
const notification = event.currentTarget;
console.log(`Geklickt: "${notification.title}"`);
window.focus();
window.location.href = notification.data.url;
notification.close();
});
Im Service Worker: event.notification.title
// sw.js
self.addEventListener('notificationclick', (event) => {
const { title } = event.notification;
event.notification.close();
event.waitUntil(
clients.openWindow(`/inbox?quelle=${encodeURIComponent(title)}`)
);
});
Schreibschutz: Zuweisung wird ignoriert
const n = new Notification('Original');
n.title = 'Geändert'; // ohne Wirkung (im strict mode TypeError)
console.log(n.title);
// Wichtig · Fallstricke
- Nur lesbar: Eine Zuweisung wird ohne Meldung ignoriert, im Strict Mode (auch in ES-Modulen) wirft sie einen
TypeError. Einen anderen Titel bekommt man nur mit einer neuen Benachrichtigung. Mit gleichemtagersetzt sie die alte. - Sicherer Kontext: Die Notifications-API gibt es nur über HTTPS (oder
localhost). Außerdem mussNotification.permissiongleich'granted'sein, sonst erscheint keine Benachrichtigung. - Mobil: Chrome für Android erlaubt den Konstruktor
new Notification()nicht (TypeError). Dort muss manregistration.showNotification()im Service Worker nutzen. Safari auf iOS unterstützt Benachrichtigungen erst ab 16.4 und nur für Web-Apps, die zum Home-Bildschirm hinzugefügt wurden. - Darstellung: Wie der Titel angezeigt wird und ab welcher Länge er abgeschnitten wird, entscheidet das Betriebssystem. Wichtige Informationen gehören deshalb an den Anfang.
- Sicherheit: Der Titel wird als reiner Text angezeigt, HTML wird nicht ausgewertet. Nutzt man
titlespäter in eigenem DOM-Code (etwa perinnerHTML), muss man ihn trotzdem maskieren, wenn er von Nutzern stammt.