如何知道 url 散列何时被手动(写入)更改?

How to know when a url hash has been manuallly (writing) changed?

有什么方法或工具(js 插件或其他)可以让我知道何时手动更改 URL 的哈希部分?注意:'manual' 我的意思是,我在这里:

http://www.[mydomain].com/#hash1

然后我使用 mouse/keaboard 取消并重写散列,或者单击 back/next 浏览器按钮。

http://www.[mydomain].com/#hash2

window 对象有一个 hashchange 事件,该事件在 url 哈希更改时触发

window.addEventListener("hashchange", function(event){
 console.log('hash change event =>',event);
}, false);

从 mdn 文档中阅读更多信息 - https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onhashchange