我試過Chrome,FireFox和Safari上的代碼。仍然onbeforeunload不會觸發。我也嘗試了onunload,但它沒有奏效。爲什麼onbeforeunload事件不會觸發
這是我正在試驗的代碼。
<!doctype html>
<html lang="en">
<head>
<title> Output to a Page </title>
<meta charset="utf-8">
<script>
window.onload = init;
window.onclick = clk;
window.onbeforeunload = closing;
function clk() {
window.alert("Ouch !!");
}
function closing() {
console.log("function alrt WORKS !!!!");
window.alert("closing now.....");
}
function init() {
var output = "";
for (var mms = 5; mms > 0; mms--) {
if (mms >= 3) {
output += "Still lots of M&Ms left, so eat more!<br>";
} else {
output += "Getting low on M&Ms, take it easy!<br>";
}
}
output += "All out of M&Ms";
var e = document.getElementById("output");
e.innerHTML = output;
}
</script>
</head>
<body>
<p id="output"></p>
</body>
</html>
目前這是我能夠爲onbeforeunload事件實現完全跨瀏覽器支持的唯一方式(Firefox在某些情況下不會觸發它)。感謝這個偉大的答案! – user3351605