JavaScript / jQuery - onhashchange事件解决方法

时间:2010-05-06 19:12:39

标签: javascript jquery events fragment-identifier hashchange

在所有浏览器都支持onhashchange事件之前,最好的解决方法是什么?

jQuery中有什么东西吗?还是作为插件?

6 个答案:

答案 0 :(得分:10)

不确定这是否是您正在寻找的,但值得一试:

http://plugins.jquery.com/project/ba-jquery-hashchange-plugin

答案 1 :(得分:8)

是的。

查看此jQuery插件:http://benalman.com/projects/jquery-hashchange-plugin/

答案 2 :(得分:6)

var lastHash = "";

window.onload=function()
{   
 hashChangeEventListener = setInterval("hashChangeEventHandler()", 50);
}

function hashChangeEventHandler()
{
    var newHash = location.hash.split('#')[1];

    if(newHash != lastHash)
    {
        lastHash = newHash;
        //Do stuff!
    }
}

在所有经过测试(该死的所有)平台上,对我来说都很好。

答案 3 :(得分:1)

答案 4 :(得分:1)

另一个抽象网址管理的图书馆是History.js

答案 5 :(得分:0)

如果您正在寻找iframe跨域解决方案,那么这似乎是最强大的解决方案:
http://easyxdm.net/wp/
http://www.cakemail.com/the-iframe-cross-domain-policy-problem/

我没有尝试过,看起来它可能有点难以实现,并且可能无法在所有情况下都有效。

相关问题