javascript - 从浏览器历史记录中删除当前页面

标签 javascript html html5-history

我正在我的网站上构建一个文本编辑器,工作流程如下。

  1. /list 中,用户从列表中选择他们想要编辑的条目,该列表会将他们带到 /edit/[article_id]
  2. 用户完成他们的工作,然后点击提交。
  3. 服务器处理该内容,并将它们重定向回 /edit/[article_id],它现在反射(reflect)了编辑后的工作。服务器还会在页面上激活一条闪现消息,指示编辑成功。

此时,用户可能想要返回到 /list 并单击浏览器的后退按钮。这将根据他们提交的次数反复将他们带回给编辑。

我试过在页面的某处放置一个后退按钮,但很多用户只是忽略了它。

我宁愿不通过 AJAX 提交,因为这也会影响 flash 消息系统。

我喜欢做的是在用户提交时替换历史列表中的最后一个条目,而不改变其长度。可能吗?

最佳答案

试试这个

window.location.replace(url);

在使用 replace() 之后,当前页面将不会保存在 session 历史记录中,这意味着用户将无法使用“后退”按钮导航到它。

关于javascript - 从浏览器历史记录中删除当前页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42918837/

相关文章:

javascript - 获取具有给定属性和类的元素的 ID

javascript - 在通过 AJAX 加载的 DOM 中运行动态注入(inject)的 javascript(尝试使用 history.js 对网站进行 ajax 化)

javascript - Swiper.js 用不同的选项循环控制两个实例

html - div 边距更改父 div 的边距

html - 如何控制 anchor 着陆位置

javascript - 获取 onpopstate 事件弹出的历史记录

javascript - 历史 HTML5 和页面源代码

java - Selenium 加载完整的网站

javascript - 可以在 Grafana 数据源库中导入外部 JavaScript 库

javascript - 优雅的 jQuery 替换多个值