Javascript pushState,onpopstate - 在~10个州之后 - 点击第5步(在后退按钮上)并输出第4步

时间:2018-05-05 16:48:38

标签: javascript pushstate popstate

使用pushState的代码

        window.history.pushState({"html":r[0],"pageTitle":r[1], 'bread_crumbs': r[2], 'page': r[3], 'parentid': r[4], 'pageid': r[5]},"", h);

用于检查状态的代码

window.onpopstate = function(e) {
    console.log(e.state.page+'|'+location.href);

所以让我说我访问了10页 - 当我点击第5页时,它在浏览器中显示出好的标题。但由于一些奇怪的原因,它输出了第4页。

如果我点击后退按钮,可能你知道 - Chrome会在点击第二个鼠标按钮时显示所有步骤。所以这就发生了这个问题。

谢谢。

你可以在这里试试 http://demo.ajax-cart.com/

点击 1.测试类别 2.品牌 3.博客 4.关于 5.新闻

使用后退按钮转到“我们的博客” - 您将看到“品牌”。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案

            document.title = r[1];
            window.history.pushState({"html":r[0],"pageTitle":r[1], 'bread_crumbs': r[2], 'page': r[3], 'parentid': r[4], 'pageid': r[5]},"", h);

但它一定是

        window.history.pushState({"html":r[0],"pageTitle":r[1], 'bread_crumbs': r[2], 'page': r[3], 'parentid': r[4], 'pageid': r[5]},"", h);
        document.title = r[1];