我有一个页面,只会根据某些参数将用户重定向到某个页面。因此,此页面将始终重定向访问者。
问题是当访问者使用后退按钮到达此页面时。他/她将被重定向到他/她刚刚点击后退按钮的页面。
上下文:三页:A,B和C
在页面A上,我点击链接转到第B页。页面B只会将我重定向到第C页。
问题:点击第C页上的返回。我转到第B页几秒钟,然后我将重定向回到第C页
应该:在页面C上,当我点击后退按钮时,我想转到第A页。
我以为我可以使用Request.UrlReferrer,但这包含第A页的网址
是否有任何跨浏览器解决方案可以让我这样做?
我更喜欢服务器端解决方案,但我也打开了客户端。
编辑:我只是想到,当访问者重定向到第C页时,可以将页面B的浏览器历史记录中的条目替换为第A页。但我不知道是否这是可能的,也是允许的。
答案 0 :(得分:3)
试试这个
History.js在所有浏览器中优雅地支持HTML5历史/状态API(pushState,replaceState,onPopState)。包括对数据,标题,replaceState的持续支持。支持jQuery,MooTools和Prototype。对于HTML5浏览器,这意味着您可以直接修改URL,而无需再使用哈希。对于HTML4浏览器,它将恢复使用旧的onhashchange功能。