此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Navigation:navigatesuccess 事件

基线 2026
最近可用

自 January 2026 起,此特性已在最新浏览器中得到支持。但在较旧的设备或浏览器中可能无法运行。

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

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}`);
});

规范

规范
HTML
# event-navigatesuccess

浏览器兼容性

参见