在問題中,頁面加載之間的 Persist variables,接受的答案說存盤在的資料window被保留。
它說,
主要區別在于,此資訊不僅保留在頁面重繪 中,還保留在不同的域中。但是,它僅限于您所在的當前選項卡。
當我嘗試從 chrome dev 控制臺寫入 window 物件并導航到同一域上的其他頁面時,這些值沒有保留。
這就是我所做的:
- 打開https://stackoverflow.com/unanswered
- 打開開發控制臺并設定
window.testKey = "test-value" - 單擊問題鏈接之一導航到其他頁面。
- 進入
window.testKey控制臺回傳undefined。
此外,在視窗上設定值然后重繪 頁面的簡單情況似乎也不會保留該值。
我錯過了什么?
uj5u.com熱心網友回復:
你參考的部分:
主要區別在于,此資訊不僅保留在頁面重繪 中,還保留在不同的域中。但是,它僅限于您所在的當前選項卡。
僅 about window.name,這是一個特殊的屬性,在當前的瀏覽器中,這在某種程度上仍然有效。
視窗名稱:
Window.name如果選項卡加載來自不同域的頁面,現代瀏覽器將重置為空字串,如果重新加載原始頁面(例如,通過選擇“回傳”按鈕),則會恢復名稱。這可以防止不受信任的頁面訪問前一個頁面可能存盤在屬性中的任何資訊(新頁面可能也會修改此類資料,如果重新加載原始頁面,則可能會讀取這些資料)。
我最終它只是一個黑客,你不應該依賴它的功能。對于同一個域,您有localStorage或sessionStorage
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/343771.html
標籤:javascript 谷歌浏览器
