Skip to content

Instantly share code, notes, and snippets.

@rayets123
Last active June 9, 2017 11:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rayets123/f0a1bd46b18f0a2f05f2cce9217515ad to your computer and use it in GitHub Desktop.
Save rayets123/f0a1bd46b18f0a2f05f2cce9217515ad to your computer and use it in GitHub Desktop.
Notification API
sendNotification('Верните Линуса!', {
body: 'Тестирование HTML5 Notifications',
icon: 'icon.jpg',
dir: 'auto'
});
function sendNotification(title, options) {
// Проверим, поддерживает ли браузер HTML5 Notifications
if (!("Notification" in window)) {
alert('Ваш браузер не поддерживает HTML Notifications, его необходимо обновить.');
}
// Проверим, есть ли права на отправку уведомлений
else if (Notification.permission === "granted") {
// Если права есть, отправим уведомление
var notification = new Notification(title, options);
function clickFunc() { alert('Пользователь кликнул на уведомление'); }
notification.onclick = clickFunc;
}
// Если прав нет, пытаемся их получить
else if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
// Если права успешно получены, отправляем уведомление
if (permission === "granted") {
var notification = new Notification(title, options);
} else {
alert('Вы запретили показывать уведомления'); // Юзер отклонил наш запрос на показ уведомлений
}
});
} else {
// Пользователь ранее отклонил наш запрос на показ уведомлений
// В этом месте мы можем, но не будем его беспокоить. Уважайте решения своих пользователей.
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment