Navigation: currententrychange 事件

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

Navigation 介面的 Navigation.currentEntry 發生變化時,會觸發 currententrychange 事件。

此事件將針對以下情況觸發:

此事件在導航提交後觸發,這意味著可見 URL 已更改,並且 NavigationHistoryEntry 已更新。這對於從使用舊 API 功能(如 hashchangepopstate 事件)遷移過來非常有用。

語法

在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。

js
addEventListener("currententrychange", (event) => { })

oncurrententrychange = (event) => { }

事件型別

一個 NavigationCurrentEntryChangeEvent。繼承自 Event

Event NavigationCurrentEntryChangeEvent

示例

導航資料報告

js
navigation.addEventListener("currententrychange", () => {
  const data = navigation.currentEntry.getState();
  submitAnalyticsData(data.analytics);
});

設定每個條目的事件

js
navigation.addEventListener("currententrychange", () => {
  navigation.currentEntry.addEventListener("dispose", genericDisposeHandler);
});

規範

規範
HTML
# event-currententrychange

瀏覽器相容性

另見