NavigationCurrentEntryChangeEvent

可用性有限

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

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

NavigationCurrentEntryChangeEvent 介面是 Navigation API 的事件物件,用於 currententrychange 事件,當 Navigation.currentEntry 發生更改時會觸發此事件。

當發生同文檔導航(例如,back()traverseTo())、替換(即,呼叫 navigate() 時將 history 設定為 replace)或其他更改條目狀態的呼叫(例如,updateCurrentEntry()History APIHistory.replaceState())時,都會觸發此事件。

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

Event NavigationCurrentEntryChangeEvent

建構函式

建立一個新的 NavigationCurrentEntryChangeEvent 物件例項。

例項屬性

繼承其父級 Event 的屬性。

from 只讀 實驗性

返回從中導航的 NavigationHistoryEntry

返回導致更改的導航型別。

示例

導航資料報告

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

設定每個條目的事件

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

規範

規範
HTML
# the-navigationcurrententrychangeevent-interface

瀏覽器相容性

另見