NavigateEvent:hashChange 属性

Limited availability

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

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

NavigateEvent 接口的 hashChange 只读属性在导航是片段导航(即,导航到同一文档中的片段标识符)时返回 true,否则返回 false

布尔值——如果导航是片段导航,则为 true,否则为 false

示例

js
navigation.addEventListener("navigate", (event) => {
  // 有些导航,例如跨源导航,我们无法拦截。让浏览器正常处理这些导航。
  if (!event.canIntercept) {
    return;
  }

  // 不要拦截片段导航或下载。
  if (event.hashChange || event.downloadRequest !== null) {
    return;
  }

  event.intercept({
    handler() {
      if (event.formData) {
        processFormDataAndUpdateUI(event.formData, event.signal);
      } else {
        doSinglePageAppNav(event.destination, event.signal);
      }
    },
  });
});

规范

Specification
HTML
# dom-navigateevent-hashchange-dev

浏览器兼容性

BCD tables only load in the browser

参见