javascript – 如何在使用Ajax时保持浏览器历史记录同步?

我正在使用ASP.NET Ajax编写一个简单的相册应用程序.
该应用程序使用async Ajax调用在相册中预加载下一张照片,而不更改浏览器中的URL.

问题是当用户在浏览器中点击后退按钮时,应用程序不会返回到上一张照片,而是导航到应用程序的主页.

有没有办法欺骗浏览器将每个Ajax调用添加到浏览历史?

解决方法

更新:现在有 HTML5历史记录API(pushState,popState)不推荐使用HTML4 hashchange功能. History.js提供跨浏览器兼容性和HTML4浏览器的 optional hashchange后备.

这个问题的答案或多或少与我对这些问题的回答相同:

> How to show Ajax requests in URL?
> How does Gmail handle back/forward in rich JavaScript?

总而言之,您一定要查看这两个解释整个hashchange过程的项目,并将ajax添加到组合中:

> jQuery History(使用哈希来管理你的页面状态并绑定更改以更新页面).
> jQuery Ajaxy(ajax扩展为jQuery历史,允许完整的ajax网站,而完全不引人注意并且可降解).

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...