如何在卸载之前关闭页面的所有通知(不使用Window#onunload)?

时间:2011-05-11 23:27:56

标签: javascript html5 google-chrome notifications

我有一个页面,使用window.webkitNotifications通知用户有关服务器更新的信息。

这不是Google Chrome扩展程序。

我想在页面卸载前关闭所有页面通知。 我正试着这样做:

var notifications = new Array();

// ...
var popup = window.webkitNotifications.createNotification(...);
// ...
notifications.push(popup);

// ...
function closeAll(){
  for (notification in notifications) {
    notifications[notification].cancel();
  }
}

//...
$(window).unload(function() {
  closeAll();
});

但重新加载页面时,通知未关闭。 我在Chromium项目中发现了这个问题:https://code.google.com/p/chromium/issues/detail?id=40262

如何在不使用Window#onunload?

的情况下确保关闭页面通知

3 个答案:

答案 0 :(得分:2)

我想知道你是否可以使用实际弹出窗口向通知弹出窗口和settimeout添加一些javascript,这样它最终会关闭。

我将不得不尝试对此进行测试。

答案 1 :(得分:0)

使用此:)

$(window).on('beforeunload', function() {
    closeAll();
});

答案 2 :(得分:-2)

使用beforeunload事件代替unload