2016-11-15 1 views
2

Это мой код для уведомления в Google Chrome.Как удалить все уведомления Chrome в режиме загрузки с помощью JavaScript?

Как закрыть уведомление в коде?

document.addEventListener('DOMContentLoaded', function() { 
    if (!Notification) { 
    alert('Desktop notifications not available in your browser. Try Chromium.'); 
    return; 
    } 
    if (Notification.permission !== "granted") 
    Notification.requestPermission(); 
}); 

function notifyMe() { 
    if (Notification.permission !== "granted") 
    Notification.requestPermission(); 
    else { 
    var notification = new Notification('test', { 
     icon: 'http://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png', 
     body: "test", 
    }); 
    notification.onclick = function() { 
     window.open("http://stackoverflow.com/a/13328397/1269037"); 
    }; 
    } 
} 
+0

Не уверен, что вы имеете в виду здесь. Уведомление будет закрыто пользователем или нет - окно может быть закрыто, если вы сохраните дескриптор 'var w = window.open (« http://stackoverflow.com/a/13328397/1269037 »,« _blank »); 'using' w.close(); 'если не загружать разные блоки происхождения, которые вы получили от окна снова – mplungjan

ответ

3

Это просто, каждый объект уведомления имеет close() метод, нужно просто нажать их в массив и вызвать close() на каждом из них, прежде чем закрытия окна

var notify=[]; 

for(var i=0; i<=4;i++){ 
    var notification = new Notification('test', { 
    icon: 'http://cdn.sstatic.net/stackexchange/img/logos/so/so-icon.png', 
    body: "test"+i 
    });         //create some notifications 
    notify.push(notification); 
} 

function removeAllNotifys() 
{ 
    for(var i=0; i<notify.length;i++){ 
    notify[i].close();     //remove them all 
    } 
} 

window.onbeforeunload = removeAllNotifys; 

Вы можете также связать removeAllNotifys() на одной кнопке, чтобы очистить все уведомления или использовать setTimeout, чтобы удалить их, говорят через 2 секунды.

+0

спасибо. этот код верен – armanfard

 Смежные вопросы

  • Нет связанных вопросов^_^