Navigation:navigatesuccess 事件

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

实验性: 这是一项实验性技术
在将其用于生产之前,请仔细检查浏览器兼容性表格

Navigation 接口的 navigatesuccess 事件在导航成功完成后触发。

如果导航被拦截,则这将在你的 intercept() 处理器返回的任何 promise 都被兑现后发生。NavigationTransition.finished 的 promise 也将同时被兑现。

语法

在诸如 addEventListener() 之类的方法中使用事件名称,或设置事件处理器属性。

js
addEventListener("navigatesuccess", (event) => {});

onnavigatesuccess = (event) => {};

事件类型

通用的 Event

示例

你可以通过隐藏先前显示的进度指示器来处理成功的导航,如下所示:

js
navigation.addEventListener("navigatesuccess", (event) => {
  loadingIndicator.hidden = true;
});

或者你可能会在失败时显示一条错误消息:

js
navigation.addEventListener("navigateerror", (event) => {
  loadingIndicator.hidden = true; // 也隐藏指示器
  showMessage(`无法加载页面:${event.message}`);
});

规范

Specification
HTML
# event-navigatesuccess

浏览器兼容性

BCD tables only load in the browser

参见