使用案例 我有一个网页,显示某些功能的弹出窗口。弹出窗口可以被认为是HTML div,在单击相应的按钮时显示。单击取消按钮/单击浏览器后退按钮时再次隐藏。
问题: 考虑一下弹出窗口。当用户点击后退按钮时,他不应该被导航回上一页,而只会隐藏popover div。
如何使用javascript将此功能添加到浏览器后退按钮?
提前致谢
答案 0 :(得分:4)
听起来您正在寻找HTML5历史记录API。
有关其工作原理的非常好的介绍可以在http://diveintohtml5.info/history.html找到。
可在http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html找到更多信息。
此外,您应该考虑为旧浏览器填充功能。有很多选项,包括https://github.com/browserstate/history.js,其中包括一些示例代码甚至是一个工作演示(http://browserstate.github.io/history.js/demo/)。
答案 1 :(得分:2)
您可以将我们附加到网址的哈希值用于获取历史记录更改。
index.html
- >用户打开popover - > index.html#popover
现在点击后退按钮会重定向回index.html
。当然,这需要一些JavaScript代码。
答案 2 :(得分:0)
出于明显的安全原因,您无法覆盖浏览器中的按钮操作,但您可以通过编程方式添加历史记录条目,即使当前页面在历史记录中显示两次,这样当用户单击后退按钮时,他/她将被重定向回到同一页面。使用Really Simple History来实现这一目标。