所以我有这个动态php生成的代码:
<script>
parent.document.title = 'Members | UrbanRanks';
$("#cwrocket_button").click(function(){
$("#module").load("module.php?module=profile&user_url=cwrocket");
window.history.pushState( null, null, '/cwrocket.html');
parent.document.title = 'Cwrocket | UrbanRanks';
$('html, body').animate({ scrollTop: 0 }, 'slow');
return false;
});
</script>
<a id="cwrocket_button" href="cwrocket.html">Cwrocket</a>
所有Ajax / jQuery函数都按预期工作,单击链接时忽略了标题和URL,忽略了仅用于搜索引擎优化的href。
问题是,当我回击或转发时,它只会更改地址栏上的url,而不会更改模块div中的Ajax内容。
我想看看是否有人可以帮助我实现代码,以便在不重新加载整个网站的情况下启用后退和转发。
尝试做:
window.history.pushState( {site:cwrocket}, null, '/cwrocket.html');
虽然后退和前进工作,但它会重新加载整个页面。
提前感谢任何解决此问题的人,请告诉我是否需要更多代码。
答案 0 :(得分:0)
当您按下状态时,您需要保存重新加载所需的信息,然后您需要在单击后退箭头时收听该事件:
window.onpopstate = function(evt) {
// restore the previous state
}
这是一个非常普遍的答案,但是当你推动它时,事件将会保存你保存的状态信息,所以你可以用它来恢复。