Window:hashchange 事件
当 URL 的片段标识符发生更改时(URL 中以 #
符号开头并跟随 #
符号的部分),会触发 hashchange
事件。
语法
在诸如 addEventListener()
之类的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("hashchange", (event) => {});
onhashchange = (event) => {};
事件类型
一个 HashChangeEvent
。继承自 Event
。
事件属性
HashChangeEvent.newURL
只读-
表示窗口正在导航到的新 URL 的字符串。
HashChangeEvent.oldURL
只读-
表示窗口导航到的先前 URL 的字符串。
事件处理程序别名
除了 Window
接口之外,事件处理程序属性 onhashchange
也在以下目标上可用
示例
您可以在 addEventListener
方法中使用 hashchange
事件
js
window.addEventListener(
"hashchange",
() => {
console.log("The hash has changed!");
},
false,
);
或使用 onhashchange
事件处理程序属性
js
function locationHashChanged() {
if (location.hash === "#cool-feature") {
console.log("You're visiting a cool feature!");
}
}
window.onhashchange = locationHashChanged;
规范
规范 |
---|
HTML 标准 # event-hashchange |
HTML 标准 # handler-window-onhashchange |
浏览器兼容性
BCD 表格仅在浏览器中加载
另请参阅
popstate
事件