window.addEventListener("onbeforeunload",function() {return "are you sure?"});
^これは機能していないようです...まったく...確認ボックスを表示せずにページが閉じるだけです...
気付いた...
window.onbeforeunload = function() {return "are you sure?"}
機能しますが、機能を完全に書き直さないように機能を追加したい(たとえば、「onbeforeunload」関数に多くのイベントリスナーを追加したい)。
on
をonbeforeunload
から削除します。
また、addEventListener
は古いIEや他のブラウザーでは機能しないことに注意してください。一貫したイベントバインディングが必要な場合は、ライブラリを使用します。
Mozilla Developer Network beforeunloadイベントのAPIリファレンス に、「ほとんどブラウザーにまたがって動作する例」があります。彼らのコードを使用してください。
window.addEventListener("beforeunload", function (e) {
var confirmationMessage = "\o/";
(e || window.event).returnValue = confirmationMessage; //Gecko + IE
return confirmationMessage; //Webkit, Safari, Chrome etc.
});
EventListenersの接頭辞on
はありませんが、EventHandlers
ですので、
EventHandlers = prefix on
EventListeners = prefix off