首页 / 知识
关于javascript:使用Ajax时如何保持浏览器历史同步?
2023-04-13 08:20:00

How to keep the browser history in sync when using Ajax?
我正在使用ASP.NET Ajax编写一个简单的相册应用程序。 问题在于,当用户单击浏览器中的"后退"按钮时,该应用程序不会返回到上一张照片,而是会导航到该应用程序的主页。 有没有一种方法可以诱骗浏览器将每个Ajax调用添加到浏览历史记录中?
更新:现在有不推荐使用HTML4 这个问题的答案与我对这些问题的答案大致相同:
总而言之,您肯定要检查以下两个项目,这些项目说明了整个hashchange过程并将ajax添加到混合中:
MSDN上有一篇有关在ASP.NET AJAX中管理浏览器历史记录的文章 许多网站都使用隐藏的iframe来执行此操作,只需使用新的URL刷新iframe,即可将其添加到浏览历史记录中。然后,您所要做的就是处理应用程序对那些"后退按钮"事件的反应-您将需要检测iframe的状态/位置,或者使用该URL刷新页面。 您可以使用简单轻量的PathJS库。 用法示例:
如果您使用的是Rails,那么绝对可以尝试Wiselinks https://github.com/igor-alexandrov/wiselinks。它是用于浏览器状态管理的瑞士军刀。以下是一些详细信息:http://igor-alexandrov.github.io/blog/2013/07/11/the-way-to-wiselinks-1-dot-0/。 信息:Ajax导航是即将推出的IE8的常规功能。 对于所有关于后退按钮的解决方案,它们都不是"自动的"。对于每一个页面,您都必须做一些工作以保持页面状态。因此,没有办法"欺骗"浏览器,但是有一些很棒的库可以帮助您使用"后退"按钮。 3.5 SP1更新现在支持浏览器历史记录和ASP.NET ajax中的"后退"按钮。 |
最新内容
相关内容
Python可以做桌面应用程序吗
Python可以做桌面应用程序吗,平台,系统,较大,标准,培训,界面,桌面,文档,入门,开发者,python可以做桌面应用程序!目前比较主流的几个GUI平台:1python怎么打开浏览器
python怎么打开浏览器,培训,标准,网址,模块,以上,方法,更多,内容,python打开浏览器的三种方法1.通过导入os模块,调用startfile方法来打开浏python浏览器能运行python吗
python浏览器能运行python吗,代码,平台,智能,培训,灵活,项目,文件,语法,插件,浏览器,py文件不是html文件,当然不能在浏览器里打开。py文件可以您将如何在 Ruby on Rails 应用程
您将如何在 Ruby on Rails 应用程序中使用 rSpec 测试观察者?,您将如何在 Ruby on Rails 应用程序中使用 rSpec 测试观察者?,应用程序浏览器的默认CSS样式表
浏览器的默认CSS样式表,浏览器的默认CSS样式表,默认,浏览器,样式表,浏览,Browsers' default CSS stylesheets是否有针对不同浏览器关于安全性:禁用浏览器“保存密码”
关于安全性:禁用浏览器“保存密码”功能,关于安全性:禁用浏览器“保存密码”功能,医疗保健,政府,机构,我会,Disable browser 'Save Pa关于asp.net:是否有与IE的ClearAuth
关于asp.net:是否有与IE的ClearAuthenticationCache等效的浏览器?,关于asp.net:是否有与IE的ClearAuthenticationCache等效的浏览器?,应关于vb.net:如何在64位应用程序和VB
关于vb.net:如何在64位应用程序和VB2008 Express上启用“编辑并继续”功能?,关于vb.net:如何在64位应用程序和VB2008 Express上启用“关于ios:如何从自己的本机应用程序
关于ios:如何从自己的本机应用程序中启动Google Maps iPhone应用程序?,关于ios:如何从自己的本机应用程序中启动Google Maps iPhone应关于 asp.net:您如何处理 Web 应用
关于 asp.net:您如何处理 Web 应用程序的版本控制?,关于 asp.net:您如何处理 Web 应用程序的版本控制?,网站,应用程序,控制策略,中有,HowVisual Studio 2008 Web应用程序项
Visual Studio 2008 Web应用程序项目中设计器文件的目的是什么?,Visual Studio 2008 Web应用程序项目中设计器文件的目的是什么?,网站在不同网站应用程序之间共享ASP.NE
在不同网站应用程序之间共享ASP.NET .ascx控件的最佳方法?,在不同网站应用程序之间共享ASP.NET .ascx控件的最佳方法?,应用程序,控件,