2012-05-21 23 views
3

我想要做的就是關閉瀏覽器窗口,火一些功能,只有當用戶試圖通過clciking的X按鈕來關閉瀏覽器窗口。但不是刷新,「後退」按鈕點擊事件像下面的功能一樣。消防功能,如果訪客嘗試通過點擊「X」按鈕

$(window).unload(function() { alert("Bye now!"); }); 

那麼有什麼辦法可以做到這一點? Thx

+1

我不認爲有可能區分這些行爲。 – pomeh

+0

嘗試使用JavaScript在新窗口中打開您的頁面,並使用[此解決方案](http://stackoverflow.com/questions/781770/can-the-parent-window-be-notified-when-a-child- window-closes-on-a-diff-domain)來檢測它何時關閉。 – Blazemonger

回答

1

你能儘快爲他們加載頁面嘗試迫使用戶#默認的默認位置哈希值。然後,如果用戶使用後退按鈕進行導航,則可以使用定時器或窗口的「popstate」事件檢測到此情況。然後,你可以在這一點上做些事情,比如將它們發送到另一個網址。

通過這種方式,你可以檢測與「onbeforeunload」事件窗口關閉和後退按鈕按下,在最後一段中提到的方法。雜亂,但它的作品。

1

不,這是不可能的。 onbeforeunload事件做了這樣的事情,但當窗戶關閉時,它總是會觸發。它不區分窗口卸載的方式。