在Micrososft AJAX和jQuery(http://www.asual.com/jquery/address/)中有history.back的实现。 我已经在我的项目中包含了jQuery和asp.net ajax,但我不确定history.back的哪个实现更好。
对我来说更好的是:
有人知道哪一个更好吗?
编辑:
另一个jquery插件是http://plugins.jquery.com/project/history在JQuery Cookbook一书中推荐。到目前为止,这个方法运作良好。
答案 0 :(得分:8)
jQuery Address的一个替代方案是jQuery history插件。还有URL Utils。
答案 1 :(得分:0)
如果您正在构建ASP.NET应用程序,那么使用ASP.NET Ajax Framework可以为您提供许多优势,并且可以使用简单的API来使用服务器端。
下面您可以找到一个使用ASP.NET Ajax浏览器历史记录的示例
Create a Facebook-like AJAX image gallery
两者都在浏览器中提供广泛的支持。 对于我来说,更容易在ASP.NET页面中集成Microsoft AJAX Framework,所以再次如果你有一个.aspx页面,可能更容易使用ASP.NET AJAX < / p>
答案 2 :(得分:0)
如果您不需要完全AJAX,即根据请求仅更新站点的部分就足够了,那么您可以使用不可见的iframe
作为目标来加载仅包含更新/的JS脚本的生成的HTML文件重置网站的“可更新”部分。这是跨浏览器的解决方案,不需要地址轮询。
示例,但不在ASP中:kociszkowo.pl(波兰网站)
当您在部分图标中单击并且您的浏览器支持javascript时,链接在被提取之前被修改 - 目标被更改为iframe并且href后缀为.dhtml以通知服务器,我们对特殊版本的这页纸。如果在配备js的浏览器中按Back,则会从缓存中加载先前获取的iframe页面。很简单,但需要在架构层面做出一些决定。
此链接修改与此无关,它只是结合JS /非JS世界的结果。
答案 3 :(得分:0)
根据我的经验,您最好的选择是使用与您最多(如果不是全部)ajax调用相同的那个。例如,如果您使用的是asp:UpdatePanel,请使用MS - 如果您使用的是jQuery.ajax,请使用jQuery历史插件。如果你正在做混合(我在我的项目中试图避免),我会亲自测试两者并看看哪个表现更好 - 如果它们都测试正常,那么这是一个偏好。有些人可能认为微软会有更好的支持,但jQuery的历史插件可能会得到更多的使用和更成熟。
http://msdn.microsoft.com/en-us/library/system.web.ui.updatepanel.aspx