3

当我登录到我的应用程序时,应用程序的 url 是localhost/#.

然后我在我的应用程序中进行了搜索,它与 ajax 调用一起使用,在我得到结果后,url 仍然保持不变。

因此,当我单击浏览器的后退按钮时,我的应用程序将返回到我的应用程序的登录页面。所以我只需要限制页面不去登录页面。

我正在尝试这样做:

window.onload = function () {
    if (typeof history.pushState === "function") {
        history.pushState("jibberish", null, null);
        window.history.go(1);
        window.onpopstate = function () {
            history.pushState('newjibberish', null, null);
            window.history.go(-1);
            // Handle the back (or forward) buttons here
            // Will NOT handle refresh, use onbeforeunload for this.
        };
    }
    else {
        var ignoreHashChange = true;
        window.onhashchange = function () {
            if (!ignoreHashChange) {
                ignoreHashChange = true;
                window.location.hash = Math.random();
                // Detect and redirect change here
                // Works in older FF and IE9
                // * it does mess with your hash symbol (anchor?) pound sign
                // delimiter on the end of the URL
            }
            else {
                ignoreHashChange = false;   
            }
        };
    }

但是,当我单击主页中的后退按钮时,后退按钮将被禁用,而我需要获取我之前执行的搜索结果。

4

0 回答 0