Navigation: forward() 方法
Navigation 介面的 forward() 方法會在導航歷史中向前導航一個條目。
語法
js
forward(options)
引數
options可選-
一個包含以下屬性的選項物件
info可選-
要傳遞給
navigate事件的開發者定義的資訊,可在NavigateEvent.info中訪問。這可以是任何資料型別。例如,您可能希望根據內容的導航方式(左滑、右滑或主頁)以不同的動畫顯示新導航的內容。可以將指示使用哪種動畫的字串作為info傳遞。
返回值
具有以下屬性的物件:
committed-
一個
Promise,當可見 URL 已更改且已建立新的NavigationHistoryEntry時,它將fulfilled。 finished-
一個
Promise,當NavigateEvent.intercept()處理程式返回的所有 Promise 都fulfilled時,它將fulfilled。這等同於NavigationTransition.finishedPromise fulfilled,此時會觸發navigatesuccess事件。
如果導航因某種原因失敗,則這兩個 Promise 中的任何一個都會 rejected。
異常
InvalidStateErrorDOMException-
如果
Navigation.currentEntry的NavigationHistoryEntry.index值是 -1 或navigation.entries().length - 1,即當前Document尚未啟用,或者當前歷史條目是歷史中的最後一個條目,這意味著無法進行向前導航,或者當前Document正在解除安裝,則會丟擲此異常。
示例
js
async function backHandler() {
if (navigation.canGoBack) {
await navigation.back().finished;
// Handle any required clean-up after
// navigation has finished
} else {
displayBanner("You are on the first page");
}
}
async function forwardHandler() {
if (navigation.canGoForward) {
await navigation.forward().finished;
// Handle any required clean-up after
// navigation has finished
} else {
displayBanner("You are on the last page");
}
}
規範
| 規範 |
|---|
| HTML # dom-navigation-forward-dev |
瀏覽器相容性
載入中…