Internet Explorer的pushState后备?

时间:2011-07-25 23:55:20

标签: javascript pushstate

我知道IE不支持pushState,但我想让使用现代浏览器的用户享受这些好处,而使用旧浏览器的用户却不会使用它。

目前,javascript代码阻止我的标签式导航在IE中完全运行,这意味着无法看到很多内容。

任何人都知道我的问题的解决方案吗?

这是我的JavaScript代码:

var tabContents = $(".tab_content").hide(),
                  tabs = $(".tab_nav li");

tabs.first().addClass("active").show();
tabContents.first().show();

tabs.click(function() {
    var $this = $(this), 
        activeTab = $this.find('a').attr('href');
        history.pushState(null, '', activeTab);

    if(!$this.hasClass('active')){
        $this.addClass('active').siblings().removeClass('active');
        tabContents.hide().filter(activeTab).fadeIn();
    }

    return false;
});

$(window).bind('popstate', function(){
    $.getScript(location.href);
});

1 个答案:

答案 0 :(得分:4)

试试jQuery BBQ: Back Button & Query Library。我使用它取得了很大的成功。