onHashChange
或 hashChange
在 Safari 中是否有效?我在 Windows 7 上使用 Safari 4.0.4 对其进行了测试,但它对我不起作用。
如果它不起作用,是否有任何解决方案可以跟踪 hash
是否已更改?
最佳答案
在我们的应用程序中,我们轮询以检查更改:
$b.hashCheck = setInterval(
function(){
if ( window.location.hash !== $b.C.current_hash){
$b.C.current_hash = window.location.hash;
//call the on change action here
}
},$b.C.hashCheckDelay
);
$b 是我们用于命名空间的全局对象,hashCheckDelay
根据经验设置为 120 毫秒。
虽然执行这种过程看起来有点难过,但实际上并没有我们测试过的任何浏览器上的任何性能问题。
关于javascript - onHashChange 在 Safari 中有效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4029433/