2011-01-26 61 views
3

當他/她嘗試退出瀏覽器窗口時,我必須提示用戶。例如,當您登錄到Gmail,你開始撰寫新郵件,然後嘗試保存任何東西之前關閉它時,Gmail會給你一個彈出說是這樣的:當用戶嘗試退出瀏覽器窗口時顯示彈出窗口(GMail樣式)

你真的想退出此頁?

然後你可以選擇離開頁面或停留在頁面上。所以我感興趣的是他們是如何做到的以及當用戶按下Stay on this page時他們使用了什麼技巧(如果有的話)。

+4

我只想說,這可能會讓一些用戶惱火。你真的*需要它嗎?難道你不能保存信息(某處),而不必這樣做? – 2011-01-26 19:45:25

回答

4

將函數綁定到onbeforeunload

window.onbeforeunload = function(){ 
    return 'Are you sure you want to leave?'; 
}; 

適用於所有瀏覽器(在IE 8,FF 3.6,Chrome 9中測試)。

或者使用jQuery:

$(window).bind('beforeunload', function(){ 
    return 'Are you sure you want to leave?'; 
}); 
7

爲了避免惱人的用戶,你可能會想得是多變的,這取決於如果操作運行狀態。事情是這樣的:

window.beforeunload = function(){ 
    if(isPerformingOperation) { 
    return 'Are you sure you want to leave?'; 
    } 
} 

設置isPerformingOperation爲true時要提示他們,並把它關掉,當你完成。