Chrome extension development: auto close the notification box

孤者浪人 提交于 2019-11-29 19:50:08

问题


After doing something I run this code:

var notification = webkitNotifications.createNotification(
   'icon.png',  // icon url - can be relative
  'Done!',  // notification title
  'Just updated your list!'  // notification body text
   );
  notification.show();

which of course pops up a notification into the users screen.

It there anyway to time this notification so that it auto-closes in X amount of seconds?

Thanks! R


回答1:


You can use notification.cancel();




回答2:


var notification = webkitNotifications.createNotification('images/icon-48x48.png',"This is       Title","Biswarup Adhikari Notification");
notification.show();
setTimeout(function(){
notification.cancel();
},2000);

Chrome notification will close automatically after 2000 milli sec or 2 sec.




回答3:


You'll be able to call window.close() from inside the notification's HTML page. That will close the notification.

To close at a certain time, calling something like setTimeout( function () { window.close(); }, timeInMicroseconds); should be effective.




回答4:


function show(title, message, icon) {
try {
    icon = icon || 'src/img/icons/icon48.png';
    var self = this;
    var isClosed = false;
    var notificationId = "posting_" + Math.random();

    chrome.notifications.create(notificationId, {
        type: "basic",
        title: title + "!",
        message: message,
        iconUrl: icon
    }, function (nId) {
    });

    setTimeout(function () {
        if (!isClosed)
            chrome.notifications.clear(notificationId, function (wasCleared) {
            });
    }, 3000);
} catch (e) {
    alert(e.message);
}

}

ok, when i created notification remeber the id notificationId and settimeout clear this id




回答5:


//Use requireInternaction and set it to true for notification to not to auto-hide.

function showNotification() {
    var options = {
        body: 'The Subtitles will Go Here',
        requireInteraction: true
    };

    if (window.Notification && Notification.permission !== "denied") {
       Notification.requestPermission(function (status) {  // status is "granted", if accepted by user

var n = new Notification('Title', options);
        });
     }

   }


来源:https://stackoverflow.com/questions/5732031/chrome-extension-development-auto-close-the-notification-box

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!