onHashChange在Safari中有效吗?

时间:2010-10-27 01:57:39

标签: javascript hash safari hashchange

onHashChangehashChange在Safari中有效吗?我在Windows 7上使用Safari 4.0.4进行了测试,但它对我不起作用。

如果它不起作用,是否有任何解决方案可以跟踪hash是否已更改?

2 个答案:

答案 0 :(得分:1)

在我们的应用中,我们进行了调查以检查更改:

$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毫秒。
虽然它看起来有点难过做这样的过程的全局对象,没有任何性能问题在我们测试的任何浏览器上。

答案 1 :(得分:1)

Safari 4.0.4它还没有用,但在最新的一个工作正常。我没有找到任何可接受的解决方案来跟踪那些不支持onHashChange的浏览器的哈希值是否发生了变化。