不幸的是,沒有javascript事件來檢測X按鈕的單擊(關閉了browswer)。我們最接近的是onunload或onbeforeunload事件。而且,是的,無論用戶選擇離開頁面的方式如何,它們都會觸發。無論是關閉瀏覽器,點擊鏈接,輸入另一個URL或重新加載頁面。這是你發現的。
不知道這是否會解決你的問題,因爲我們StackOverflowers不知道你的應用程序做,但你可以創建一個類似的雜牌組裝電腦:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<script type="text/javascript">
function Message()
{
if (reallyExiting) alert("Are you sure you want to leave?");
}
</script>
</head>
<body onload="reallyExiting=true;" onunload="return Message();">
<a href="example.html" onclick="reallyExiting=false">Not really leaving</a>
<a href="http://www.someOtherSite.com">Really leaving</a>
</body>
</html>
我知道它的粗糙,但你可以根據具體情況,使用一些類似的變量來跟蹤他們所擊中或未擊中的鏈接。
HTH。
來源
2009-09-06 02:53:06
Rap
+1「您有未保存的更改」是卸載確認的唯一理由。那些纏着「請留在這個可愛的網站」留言的網站對網絡來說是一種犯罪行爲,產生這些網站的設計師將受到國際網絡司法法庭的起訴和嚴厲懲罰。 – bobince 2009-09-06 23:36:11
bobince for web presidency! :) – vsync 2009-10-22 13:31:03
@bobince - 但有些人會用它作爲垃圾郵件,'單擊停留優惠券50%!'(-_-) – 2012-05-10 03:06:37