后退按钮它没有带我到上一页

时间:2018-04-12 17:22:58

标签: javascript jquery

jQuery加载正在运行,但当我按下后退按钮时,它没有带我到上一页。

这是代码。

function openPage(url) {

    if(timer != null){
        clearTimeout(timer);
    }
    if(url.indexOf("?") == -1) {
        url = url + "?";
    }

var encodedUrl = encodeURI(url + "&userLoggedIn=" + userLoggedIn);
    console.log(encodedUrl);
    $("#mainContent").load(encodedUrl);
    $("body").scrollTop(0);
    history.pushState(null, null, url);
}

打开页面的范围是

<span role="link" tabindex="0" onclick="openPage('yourMusic.php')" class="navItemLink">Your Music</span>

问题是,当我点击浏览器后退按钮时,地址栏中的网址会发生变化,但内容未加载到“#mainContent”div中。

1 个答案:

答案 0 :(得分:-1)

我碰到了类似的东西,这是由于ajax缓存设置为true。尝试使用jQuery ajax,并将cache设置为false ...

$.ajax({
    url: encodedUrl,
    cache: false,
    dataType: "html",
    success: function(data) {
        $("#mainContent").html(data);
    }
});

糟糕

这实际上是被贬低的。请改用它......

$.ajax({
  url: encodedUrl,
  cache: false
})
.done(function( html ) {
    $( "#mainContent" ).append( html );
});