检测非编程 url 哈希更改
Detect non-programmatic url hash changes
我正在使用 window.onhashchange 检测浏览器哈希更改。但是有没有办法只在散列以非编程方式更改时触发回调?
我不是问如何使用onhashchange。当我以编程方式设置哈希时,我试图避免触发它。
基本上,我想做类似的事情:
window.onhashchange = () => { /* ... */ };
但我不希望在代码执行以下操作时触发回调:
window.location.hash = 'hello-world';
谢谢!
我最终通过简单地设置一个标志来解决它,这看起来像是一个 hack,但考虑到 JavaScript 执行环境是单线程的,应该可以正常工作。
我正在使用 window.onhashchange 检测浏览器哈希更改。但是有没有办法只在散列以非编程方式更改时触发回调?
我不是问如何使用onhashchange。当我以编程方式设置哈希时,我试图避免触发它。
基本上,我想做类似的事情:
window.onhashchange = () => { /* ... */ };
但我不希望在代码执行以下操作时触发回调:
window.location.hash = 'hello-world';
谢谢!
我最终通过简单地设置一个标志来解决它,这看起来像是一个 hack,但考虑到 JavaScript 执行环境是单线程的,应该可以正常工作。