我最近看到一些网络应用程序通过单击按钮来更改页面的内容和有效状态。然后他们有链接可以导航到应用程序的另一部分。有时我想通过按浏览器的后退按钮返回,我希望页面处于我离开时的状态。但是我经常看到我第一次进入那个页面时的内容。
在现代 Web 应用程序中构建导航的好方法是什么,以便后退按钮返回给您页面的上一个(最后一个)状态。
我最近看到一些网络应用程序通过单击按钮来更改页面的内容和有效状态。然后他们有链接可以导航到应用程序的另一部分。有时我想通过按浏览器的后退按钮返回,我希望页面处于我离开时的状态。但是我经常看到我第一次进入那个页面时的内容。
在现代 Web 应用程序中构建导航的好方法是什么,以便后退按钮返回给您页面的上一个(最后一个)状态。
这篇文章可能会有一些答案。它详细介绍了如何使用 HTML5 的 pushState 和 popState 在使用前进/后退时维护 Web 应用程序中的状态,而无需完全刷新页面。
我想您指的是由 AJAX 提供支持的动态单页应用程序。
您可以使用大多数现代浏览器(包括 IE10)支持的历史对象的新PushState()和replaceState()方法,并允许您在不触发页面刷新的情况下操作浏览器的历史记录。这允许您将对象附加到状态,一旦触发onpopstate事件,即当用户在浏览器中按下或前进时,您就可以使用该状态。
一旦传递了对象,您就可以相应地操作页面。例如,您可以为帖子传递一个唯一 ID,然后使用 AJAX 加载它。