2009-12-07 174 views
1

我發現在IE + Safari瀏覽器/歌劇+火狐中的cookie行爲怪異的差異,而與「返回」按鈕進行導航:餅乾在IE6 +,Safari瀏覽器與歌劇,火狐(JQuery的)

在IE和Safari當通過「後退」按鈕返回到前一頁時,在頁面上設置的cookie被丟棄(恢復),而在Opera和Firefox中,新的Cookie仍然存在。

後者的行爲正是我需要的,但如何實現它的IE瀏覽器和Safari瀏覽器,如果這甚至有可能?

的Cookie是由服務器設置和讀取使用JQuery cookie的API($ .cookie)

感謝。

回答

0

我遇到了完全相反的問題,在FF和鉻。當頁面被加載時,cookies恢復到cookies。如果用戶選擇更改cookie的選項,轉到另一個頁面,然後單擊返回,則該更改將丟失。但是相同的腳本在IE和Safari中對我來說工作正常。

編輯:我與FF /鉻具有我剛纔糾正持久性問題,通過將這些PHP線到我的網頁:

header("Cache-Control: no-store, must-revalidate"); 
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); 

它看起來好像瀏覽器有不同的默認規則緩存和必須指定使用哪一個。同樣使用這樣的虛擬onBeforeUnload函數:

window.onbeforeunload = function() { 
    // return 'warning'; 
} 

有助於防止在未給予最終用戶警告對話框的情況下緩存頁面。

我不知道它是否有幫助,但我想我會給我兩分錢。

相關問題