Recherche…
Syntaxe
- Notification.requestPermission ( rappel )
- Notification.requestPermission (). Then ( callback , rejectFunc )
- nouvelle notification ( titre , options )
- notification .close ()
Remarques
L'API Notifications a été conçue pour permettre à un navigateur de notifier le client.
La prise en charge par les navigateurs peut être limitée. La prise en charge par le système d'exploitation peut également être limitée.
Le tableau suivant donne un aperçu des versions de navigateur les plus anciennes qui prennent en charge les notifications.
Chrome | Bord | Firefox | Internet Explorer | Opéra | Opera Mini | Safari |
---|---|---|---|---|---|---|
29 | 14 | 46 | pas de support | 38 | pas de support | 9.1 |
Demander l'autorisation d'envoyer des notifications
Nous utilisons Notification.requestPermission
pour demander à l'utilisateur s'il souhaite recevoir des notifications de notre site Web.
Notification.requestPermission(function() {
if (Notification.permission === 'granted') {
// user approved.
// use of new Notification(...) syntax will now be successful
} else if (Notification.permission === 'denied') {
// user denied.
} else { // Notification.permission === 'default'
// user didn’t make a decision.
// You can’t send notifications until they grant permission.
}
});
Depuis Firefox 47 La méthode .requestPermission
peut également renvoyer une promesse lors du traitement de la décision de l'utilisateur d'accorder l'autorisation
Notification.requestPermission().then(function(permission) {
if (!('permission' in Notification)) {
Notification.permission = permission;
}
// you got permission !
}, function(rejection) {
// handle rejection here.
}
);
Envoi de notifications
Une fois que l'utilisateur a approuvé une demande d'autorisation pour envoyer des notifications , nous pouvons envoyer une simple notification indiquant à l'utilisateur:
new Notification('Hello', { body: 'Hello, world!', icon: 'url to an .ico image' });
Cela enverra une notification comme ceci:
Bonjour
Bonjour le monde!
Fermer une notification
Vous pouvez fermer une notification en utilisant la méthode .close()
.
let notification = new Notification(title, options);
// do some work, then close the notification
notification.close()
Vous pouvez utiliser la fonction setTimeout
pour fermer automatiquement la notification dans le futur.
let notification = new Notification(title, options);
setTimeout(() => {
notification.close()
}, 4000);
Le code ci-dessus engendrera une notification et la fermera après 4 secondes.
Événements de notification
Les spécifications de l'API de notification prennent en charge 2 événements pouvant être déclenchés par une notification.
- L'événement de
click
.
Cet événement s'exécutera lorsque vous cliquerez sur le corps de la notification (à l'exception du bouton de fermeture X et du bouton de configuration Notifications).
Exemple:
notification.onclick = function(event) {
console.debug("you click me and this is my event object: ", event);
}
- L'événement d'
error
La notification déclenche cet événement à chaque fois que quelque chose ne va pas, comme l'impossibilité d'afficher.
notification.onerror = function(event) {
console.debug("There was an error: ", event);
}