'history.statechange'在IE9中的document.ready期间触发

时间:2013-02-27 13:17:53

标签: jquery history.js

我有一个网页,它使用history.js根据哈希更改执行某些任务。

我使用replaceState来改变历史状态。

$(document).ready(function () {

    History.replaceState("state =1", "title", "?querystring");

    History.Adapter.bind(window, 'statechange', function () {
        var State = History.getState();
        if (State.title == "title")
            window.location.href = "default.aspx?mode=1";
        else
            window.location.href = "default.aspx?mode=2";
    });
});

然而,在'document.ready'上调用'statechange'事件以及在IE9中调用浏览器的后退/前进按钮。但是在chrome和safari中,只有在单击浏览器的后退/前进时调用它才能正常工作。

因为我正在根据标题重新加载页面。 IE通过不断重新加载页面而变得疯狂。

我经历了有关该问题的所有可能的论坛和主题。但是解决方案都没有奏效。

请建议任何解决方法只能在IE9以及其他浏览器中使用的后退/前进按钮上调用'statechange'事件。

任何帮助将不胜感激。感谢。

0 个答案:

没有答案