Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 可靠地拒绝Webkit通知_Javascript_Html_Html5 Notifications - Fatal编程技术网

Javascript 可靠地拒绝Webkit通知

Javascript 可靠地拒绝Webkit通知,javascript,html,html5-notifications,Javascript,Html,Html5 Notifications,我正在成功创建和取消webkit通知,如下所示: notification = window.webkitNotifications.createNotification('foo.png', 'bar', 'baz') notification.show() setTimeout -> notification.cancel() , 3000 但是,如果用户在这三秒钟内关闭或刷新页面,通知不会被取消,并且在手动关闭之前,通知会一直保留在桌面上 在这种情况下,有没有可靠的方法可以

我正在成功创建和取消webkit通知,如下所示:

notification = window.webkitNotifications.createNotification('foo.png', 'bar', 'baz')
notification.show()
setTimeout ->
    notification.cancel()
, 3000
但是,如果用户在这三秒钟内关闭或刷新页面,通知不会被取消,并且在手动关闭之前,通知会一直保留在桌面上

在这种情况下,有没有可靠的方法可以消除这些影响?

在页面关闭时,使用或处理程序清除这些影响。但是,这并不保留三秒钟的延迟,因为当页面关闭时,通知将立即关闭


另一个选项(保留三秒钟的延迟)是使用
createHTMLNotification(url)
从HTML页面创建通知。通过在通知HTML文档中包含类似于
setTimeout(window.close,3000)
的脚本,使通知页面自行关闭。在这种情况下,显然,您不需要在主页中调用
setTimeout
,因为它已经包含在通知中。

onunload/onbeforeuload方法似乎对我不起作用。有人能证实这一点吗?onunload/onbeforeunload方法对我不起作用。我认为这是因为通知处理程序在onunload/onbeforeunload之前已经被销毁了。