2011-09-14 54 views
1

我正在做這樣一個彈出警報:JavaScript中,如何找到已按下哪個按鈕使用onbeforeunload

window.onbeforeunload = confirmExit; 
function confirmExit() 
{ 
return "Wait! Save up to $20 Today! \n nClick OK to Save"; 
} 
當我關閉窗口,我獸醫 Stay on the pageClose the browser或類似的東西

什麼我想要做的是:如果Stay on the page選項已被選中,那麼我想eighter重定向用戶到另一個頁面或顯示一個jQuery的彈出。

一些類似於:

if (window.onbeforeunload = null){ 
location.assign('http://example.com'); 
} 

但這不起作用。

任何想法?

感謝

+0

相似的問題:http://stackoverflow.com/questions/1335727/onbeforeunload-confirmation-screen-custumization – v42

+0

這樣的消息真的很煩人。您可能需要考慮刪除它,因爲用戶不會被它感到好笑。 – pimvdb

回答

2

由於pimvdb在他對你的問題的評論說,這是做一個真正討厭的事,我強烈建議反對。這隻會讓你的潛在客戶失望,並確保他們不想在以後回到你的網站。

這就是說,你可以嘗試下面的東西。我還不能肯定它會工作,我可以看到那裏正在發生一些保障措施,以防止你的東西,而窗口的卸碴,但我會做這樣的事情:

window.onbeforeunload = confirmExit; 
var triedToExit = false; 
function confirmExit() 
{ 
    triedToExit = true; 
    return "Wait! Save up to $20 Today! \n nClick OK to Save"; 
} 

從那裏,你有一些函數每隔一段時間檢查一次,看是否設置了TryToExit,如果是,就可以像往常一樣轉發它們。

但是真的,不要這樣做。

+0

謝謝你的例子 – Patrioticcow

相關問題