我在我的网站做了一些Ajax调用,并试图实现历史API,使我可以浏览浏览器的历史。这是“返回”按钮的代码:历史API问题
$(document).ready(function(){
window.addEventListener("popstate", function(e) {
//Flag I use to not fire it on the first page load
if (!ajaxhistory)
return;
do_my_ajaxs_things();
}, false);
});
但我有2个问题
1)当我在地址栏中键入URL加载页面的第一次。这也会触发ajax调用,这显然是不受欢迎的。 Theres不需要Ajax,因为我必须加载整个页面。这一个,我已经设法用一面旗子来解决它,但我不知道是否一个更优雅的方式来做到这一点
2)可以说我在“google.com”,我键入我的网址“www。 mysite.com“,然后我打一个ajax电话,然后转到”www.mysite.com/contacts“。如果我按回退按钮一次,我会去“www.mysite.com”好,但如果我再次按下BACK,我仍然会在“www.mysite.com”,我发现自己我不能回到谷歌。我怎么能解决这个问题?
所有帮助表示赞赏。谢谢。
现在这是很多的解释,但最重要的问题是没有回答:你想达到什么?为什么你在'popstate'处理程序中启动AJAX调用? –
我试图实现的是当我使用ajax加载页面时,我可以使用后退和前进按钮 –