Ce face Notification
Notification.requestPermission() cere permisiunea și returnează "granted", "denied" sau "default" (fereastra a fost închisă). Starea curentă este în Notification.permission. Cererea trebuie făcută după un clic.
După acordare, new Notification(titlu, optiuni) afișează notificarea, cu text (body), pictogramă (icon) și eveniment click. Notificările care vin când site-ul este închis (push) au nevoie de un service worker.
Parametri
| Parametru | Descriere |
|---|---|
titlu |
Titlul notificării. |
optiuni |
Opțional. body, icon, tag, data… |
Ce returnează
requestPermission: o Promise cu starea. Constructorul: un obiect Notification.
Exemple
Exemplul 1: O notificare după o comandă
document.querySelector("#activeaza").addEventListener("click", async () => {
const permisiune = await Notification.requestPermission();
console.log(permisiune);
if (permisiune !== "granted") return;
const n = new Notification("Comanda #1042 a fost expediată", {
body: "Curierul ajunge mâine între 10 și 14.",
icon: "/icon-192.png",
});
n.addEventListener("click", () => window.focus());
});
Rezultat în browser
granted
Greșeli frecvente
- Ceri permisiunea imediat la intrarea pe site. Majoritatea utilizatorilor refuză, iar după refuz nu mai poți cere din nou din pagină.
Comenzi înrudite
navigator.serviceWorker.register / caches.open: Instalează un service worker (pentru funcționare offline și notificări push) și lucrează cu cache-ul lui.navigator.vibrate: Face telefonul să vibreze: o dată sau după un model de vibrații și pauze.alert: Afișează o fereastră simplă cu un mesaj și butonul OK; oprește pagina până la închidere.