導航:updateCurrentEntry() 方法
Navigation 介面的 updateCurrentEntry() 方法會更新 currentEntry 的 state;在狀態更改獨立於導航或重新載入的情況下使用。
語法
js
updateCurrentEntry(options)
引數
options-
一個包含以下屬性的選項物件
state-
在導航完成後要儲存在關聯的
NavigationHistoryEntry中的開發者定義的資訊,可以透過getState()檢索。這可以是任何資料型別。例如,您可能希望儲存頁面訪問次數以用於分析,或者儲存 UI 狀態詳細資訊,以便可以顯示使用者上次離開時的檢視。儲存在state中的任何資料都必須是 結構化克隆 的。
返回值
無 (undefined)。
異常
DataCloneErrorDOMException-
如果
state引數包含的值不是結構化克隆的,則丟擲此錯誤。 InvalidStateErrorDOMException-
如果
Navigation.currentEntry為null,則會丟擲此異常,即沒有當前歷史記錄條目。例如,如果當前頁面是about:blank,則可能發生這種情況。
示例
您可以使用類似以下的程式碼來更新 <details> 元素的開啟/關閉狀態,以便在重新載入頁面或從其他地方返回時能夠恢復該狀態。
js
detailsElem.addEventListener("toggle", () => {
navigation.updateCurrentEntry({ state: { detailOpen: detailsElem.open } });
});
規範
| 規範 |
|---|
| HTML # dom-navigation-updatecurrententry-dev |
瀏覽器相容性
載入中…