以Angular方式创建自定义浏览器后退操作

时间:2016-10-05 06:18:47

标签: javascript angularjs user-experience

我在SPA中使用angularJS。我想在我的webapp中禁用浏览器后退按钮/ android后退按钮的默认操作,并为其创建自定义操作。

示例案例:我有一个注册页面,其中用户条目在提交表单之前保存为范围变量。一个惊人的全屏表单让用户选择位置,有一个后退按钮来隐藏表单(以防万一)。作为一个糟糕的用户体验,只要用户在移动设备或浏览器中按下后退按钮,页面就会被重定向到 location.history 中的上一页。此外, location.history.forward()方法重新初始化控制器,从而让用户再次填充所有内容。

在给定的约束下,什么是最好的可行解决方案?

请不要外部图书馆

1 个答案:

答案 0 :(得分:0)

也许这可以帮到你 Control or Disable Browser Back Button with Javascript or AngularJS

window.onpopstate = function (e) { window.history.forward(1); }

当历史记录检测到第一个history.back()

window.onpopstate