如何在执行ASP.NET AJAX异步回发操作时维护浏览器历史记录?
答案 0 :(得分:2)
我的回答可能不一定与ASP.NET有关,但与ajax有关。
jQuery有许多简洁的插件,允许您在使用ajax加载页面上的内容时维护浏览器历史记录。
我推荐的是jQuery History Plugin - http://tkyk.github.com/jquery-history-plugin/
基本上你将以这种方式构建URL:
http://yourpage.com/#page1
http://yourpage.com/#page2
该插件将检测URL何时更改,并且浏览器不会尝试重新加载页面,因为地址中存在哈希值。因此,当插件检测到地址更改时,您可以执行任何操作。例如,地址更改为http://yourpage.com/#page1,然后jQuery History将检测到更改,您可以从触发地址更改的事件中获取#page1字符串。那么你知道,啊哈!我有#page1,然后我应该做那个ajax操作。
使用jQuery History将页面添加到历史记录中也非常简单,只需执行以下操作:
$.history.load(url);
http://tkyk.github.com/jquery-history-plugin/#demos和http://www.serpere.info/jquery-history-plugin/samples/
上有很多好的演示我希望这会有所帮助,祝你好运!