-1
我有這個功能的問題。我會解釋 - 如果用戶關閉瀏覽器,我必須執行函數。這個函數在JavaScript- saveCookieScriptPrefOnLogOut()中寫入。如果用戶關閉瀏覽器,運行函數
我有這樣的解決方案(我所著這個計算器,從使用信息):這個解決方案
var inFormOrLink;
$('a').live('click', function() { inFormOrLink = true; });
$('form').bind('submit', function() { inFormOrLink = true; });
$(window).bind('beforeunload', function(eventObject) {
var returnValue = undefined;
if (! inFormOrLink) {
saveCookieScriptPrefOnLogOut();
}
saveCookieScriptPrefOnLogOut();
return true;
});
的問題是:有問題的每一個瀏覽器的顯示窗口「你真的要關閉嗎?」我不得不隱藏這個信息/窗口。第二個問題(不太重要但仍然) - 當我點擊鏈接或表單提交時,FF和IE運行此功能。我需要忽略鏈接和表單提交。
解決方案必須是交叉瀏覽器解決方案(IE,Chrome,FF上的窗口,最重要的是IE)。我可以使用PHP和JavaScript。
你能給我答案我怎麼解決這些問題?
爲什麼你需要依靠關閉瀏覽器的用戶?爲什麼不能在頁面加載完成時寫入該cookie?這是在像網頁這樣的無狀態環境中進行開發的錯誤方法。 – deceze
這裏是一個類似的問題:http://stackoverflow.com/questions/6107967/javascript-jquery-crossbrowser-detection-when-user-is-closing-the-browser –