如何在现代Web应用程序中导航回来

时间:2012-11-19 10:39:33

标签: javascript web-applications

我最近看到一些网络应用,通过点击按钮可以更改页面的内容和有效状态。然后他们有链接导航到应用程序的另一部分。有时我会想按回浏览器后退按钮返回,我希望页面处于我离开时的状态。但我经常看到第一次进入该页面时的内容。

在现代网络应用程序中构建导航的好方法是什么,以便后退按钮返回页面的上一个(最后)状态。

3 个答案:

答案 0 :(得分:0)

这篇文章可能有一些答案。它详细介绍了如何使用HTML5的pushState和popState在使用前进/后退时维护Web应用程序中的状态,而无需完全刷新页面。

http://diveintohtml5.info/history.html

答案 1 :(得分:0)

我不确定“现代”是什么意思,但您可能希望查看此讨论here(关于如何控制浏览器历史记录的操作以及为什么[有时候不是邪恶]),还要看一下进入this jQuery插件(用于hashable历史和状态)。

对于相关的SO问题:check this

答案 2 :(得分:0)

我想你指的是一个动态的单页应用,由AJAX提供支持。

您可以使用 history 对象的新 PushState() replaceState()方法,这些方法在大多数现代浏览器中都受支持( inc.IE10),允许您在不触发页面刷新的情况下操纵浏览器的历史记录。 这允许您将对象附加到状态,一旦触发 onpopstate 事件,即当用户在浏览器中按下或向前按下时,您将可以使用该状态。

一旦传递了对象,您就可以相应地操作页面。例如您可以为帖子传递唯一的ID,并使用AJAX加载它。

您可以在Mozilla Developer Network

中详细了解相关信息