addEventListener无法使用onbeforeunload

时间:2012-06-06 18:15:26

标签: javascript events google-chrome addeventlistener onbeforeunload

window.addEventListener("onbeforeunload",function() {return "are you sure?"});

^这似乎不起作用......根本就是关闭页面而不显示确认框......

我意识到......

window.onbeforeunload = function() {return "are you sure?"}

会工作,但我想添加功能(例如,向" onbeforeunload"函数添加许多事件监听器)不完全重写该功能!

3 个答案:

答案 0 :(得分:24)

on删除onbeforeunload

另外,请注意addEventListener在旧版IE和其他浏览器中不起作用。如果您想要一致的事件绑定,请使用库。

答案 1 :(得分:14)

有一个"几乎跨浏览器的工作示例"在Mozila开发者网络API reference for beforeunload event。使用他们的代码。

window.addEventListener("beforeunload", function (e) {
  var confirmationMessage = "\o/";

  (e || window.event).returnValue = confirmationMessage;     //Gecko + IE
  return confirmationMessage;                                //Webkit, Safari, Chrome etc.
});

答案 2 :(得分:2)

EventListeners 没有前缀on但是它适用或者我可以说 EventHandlers

所以,请记住

  

EventHandlers = 前缀

     

EventListeners = 前缀关闭