NavigationDestination
NavigationDestination 介面是 Navigation API 的一部分,代表當前導航的目標。
可以透過 NavigateEvent.destination 屬性訪問它。
例項屬性
id只讀 實驗性-
如果
NavigateEvent.navigationType是traverse,則返回目標NavigationHistoryEntry的id值,否則返回空字串。 index只讀 實驗性-
如果
NavigateEvent.navigationType是traverse,則返回目標NavigationHistoryEntry的index值,否則返回-1。 key只讀 實驗性-
如果
NavigateEvent.navigationType是traverse,則返回目標NavigationHistoryEntry的key值,否則返回空字串。 sameDocument只讀 實驗性-
如果導航的目標與當前
Document相同,則返回true,否則返回false。 url只讀 實驗性-
返回正在導航到的 URL。
例項方法
getState()實驗性-
返回與目標
NavigationHistoryEntry或導航操作(例如navigate())關聯的可用狀態的克隆。
示例
js
navigation.addEventListener("navigate", (event) => {
// Exit early if this navigation shouldn't be intercepted,
// e.g. if the navigation is cross-origin, or a download request
if (shouldNotIntercept(event)) {
return;
}
// Returns a URL() object constructed from the
// NavigationDestination.url value
const url = new URL(event.destination.url);
if (url.pathname.startsWith("/articles/")) {
event.intercept({
async handler() {
// The URL has already changed, so show a placeholder while
// fetching the new content, such as a spinner or loading page
renderArticlePagePlaceholder();
// Fetch the new content and display when ready
const articleContent = await getArticleContent(url.pathname);
renderArticlePage(articleContent);
},
});
}
});
規範
| 規範 |
|---|
| HTML # the-navigationdestination-interface |
瀏覽器相容性
載入中…