繁体   English   中英

使用history.pushState功能时如何启用后退和前进按钮?

[英]How to enable back and forward buttons when using history.pushState functionality?

我已经使用以下代码更新了WebSite中的seccion。 我决定实现window.history.pushState功能。 显然它可以正常工作,但是如果按返回按钮,则地址栏将更新为正确的值,但是导航器不会更新页面的内容。

使用pushState时,如何启用Web浏览器的适当后退功能?

  ajaxPost("/URLSite", idData, function (data) { //Success
         div.innerHTML = data.Html;
             if (data.Url.length > 0 && window.history.pushState)
                 window.history.pushState({ "html": data.Html, "pageTitle": ' my site: ' + data.Url }, '', '/' + data.Url);

         }, function (cod, Error) { //Error
            var lblMsj = document.getElementById("lblMsj");
             lblMsj.innerHTML =" <br/> " +  Error + " <br/>";
         },null);

@SLaks是正确的。 我查看了有关onpopState的一些文档,以下代码解决了该问题。

window.onpopstate = function (event) {
     if (event.state)
     {
        var divMain = document.getElementById("divMain");
        divMain.innerHTML = event.state.html;
        document.title = event.state.pageTitle;
     }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM