在我的网站上,当单击链接时,会运行一个jQuery函数,该函数使用AJAX加载内容,并且一切正常。我希望能够使用浏览器中的向后按钮加载最后一个 AJAX 请求。
当我单击后退按钮正确加载最后一个 AJAX 请求时,但是当我再次按下它时,它只会加载相同的 AJAX 请求,而不是前一个请求。这是我的代码:
$('.side-menu-link').on('click', function() {
var data_url = $(this).attr('href');
var post_title = $(this).attr('page-title');
var post_url = data_url + " div.doc-content";
$(".content-container").load(post_url);
document.title = 'Website Name - ' + post_title;
window.history.pushState({path:data_url}, '', data_url);
return false;
});
window.onpopstate = function(e) {
$('.side-menu-link[href="' + event.state.path + '"]')[0].click();
};
知道为什么这个函数只工作一次吗?谢谢
你能试试...
window.onpopstate = function(e) {
$('.side-menu-link[href="' + e.state.path + '"]').eq(0).trigger("click");
};