NavigationCurrentEntryChangeEvent
NavigationCurrentEntryChangeEvent
是 Navigation API 的接口,它是 currententrychange
事件的事件对象,当 Navigation.currentEntry
发生更改时触发。
此事件会针对相同文档导航(例如 back()
或 traverseTo()
)、替换(即带有 history
设置为 replace
的 navigate()
调用)或更改条目状态的其他调用(例如 updateCurrentEntry()
或 History API 的 History.replaceState()
)触发。
此事件在导航提交后触发,这意味着可见的 URL 已更改,并且 NavigationHistoryEntry
更新已完成。它可用于从使用旧的 API 功能(例如 hashchange
或 popstate
事件)迁移。
构造函数
-
创建一个新的
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 |
浏览器兼容性
BCD 表格仅在浏览器中加载
参见
- 现代客户端路由:Navigation API
- Navigation API 说明
- Domenic Denicola 的 Navigation API 实时演示