gpt4 book ai didi

JavaScript - 如何判断用户是否刚刚返回到上一页

转载 作者:搜寻专家 更新时间:2023-10-31 21:19:26 24 4
gpt4 key购买 nike

我有一个两页的用户流程。当用户通过 ajax 提交第一个页面时,它会将值保存到 session 中。如果用户返回浏览器,第一页 UI 将使用 session 值通过 JavaScript 重新加载到之前的状态。

但是,也可以通过查询字符串参数预填充首页。如果存在查询字符串参数,则需要忽略任何现有 session ,否则用户将永远无法通过新链接访问到预先填充了一组新值的第一页(它将始终只是用与他们上次 session 相同)。

只有当他们完成第 2 页时, session 才会被清除。

我有一个问题。如果用户转到第二页,然后通过他们的浏览器历史记录、后退按钮等返回,我们可以假设他们确实希望看到包含当前 session 值的前一页,而不是重置第一页到他们最初来到第 1 页时查询字符串中的任何内容。

澄清这里的逻辑:

Page 1

Does user have existing session?
|
No ---- Is query string present?
| |
| No ---- Load default view
| |
| Yes ---- Load from query string
|
|
Yes --- Is query string present?
|
No ---- Load from session
|
Yes ---- Did user just come directly back from Page 2?
|
No ---- Load from query string
|
Yes ---- Load from session

这是这里的最后一 block ,我不确定如何以整洁的方式进行。我知道我可以通过记录网站上的每个页面请求并检查前一个页面是否是第 2 页来解决这个问题,但我想知道是否有更简单且开销更少的方法,即使用 JavaScript。

最佳答案

当用户到达第 1 页时,您可以使用 History API 替换当前位置条目 - 使用第 1 页的无查询字符串 URL。

如果他们然后从第 2 页返回,它应该在没有任何 GET 参数的情况下加载第 1 页。

关于JavaScript - 如何判断用户是否刚刚返回到上一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57573639/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com