javascript - history.back() 的 ajax 分页问题

标签 javascript jquery html ajax pagination

==>加载第N页==>点击列表==>列表详情页。
然后,当我从浏览器执行“上一个按钮”时,我到达了第 1 页,而不是第 N 页。

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

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

还有其他解决办法吗?
再具体一点, 从浏览器点击上一个按钮后如何登陆第 N 页(使用 ajax 分页)?

最佳答案

您可以 modify the browser's history通过使用

history.pushState() 或 history.replaceState()

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

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

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

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

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

关于javascript - history.back() 的 ajax 分页问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18597864/

相关文章:

php - 将当前页面菜单设置为事件

javascript - JS对象文字中的这个 'method-like'语法是什么

javascript - 如何突出显示具有渐变背景而不是颜色背景的任何 div

javascript - 如何从页面上的按钮元素中删除禁用状态?

javascript - 验证按钮后提交表单必须点击两次

javascript - 谷歌浏览器中是否有 <object> 标签的替代品?

javascript - 使用 vuetify 2 设置故事书

javascript - 响应时 slickGoTo 不工作

javascript - 如何使用 jQuery 或 javascript 在 div 内的 insidehtml 文本后添加跨度?

html - html/css 网站上的缩放问题