1

==> 加载页面 N ==> 单击列表 ==> 列表详细信息页面。
然后,当我从浏览器执行“上一个按钮”时,我进入了第 1 页,而不是第 N 页。

我刚刚意识到ajax分页有这个问题。

到目前为止,我只能想到一个解决方法,即:
- 单击列表后,打开一个新选项卡,而不是使用原始选项卡。
  至少用户不会费力地找到上一页 N。

还有其他解决方案吗?
具体来说,如何在浏览器中单击上一个按钮后进入第 N 页(使用 ajax 分页)?

4

1 回答 1

2

您可以使用修改浏览器的历史记录

history.pushState() 或 history.replaceState()

所以,当你加载页面 N 时,你运行它(根据 Mozilla 开发者的页面)

var stateObj = { foo: "bar" }; //如果您的 URL 描述性不够,请在此处保存您的数据

history.pushState(stateObj, "pageTitle", "pathName");

如果您使用 stateObj,您需要侦听“popstate”事件以检索数据并恢复适当的状态。

这是 HTML5 规范的一部分,因此它可能不适用于旧版浏览器。

于 2013-09-03T18:11:20.997 回答