javascript - 有没有办法防止整个 AngularJS Web 应用程序中的退格导航?

标签 javascript angularjs

我需要限制整个应用程序中的退格导航。是否有任何解决方案,即我可以在一个地方为整个应用程序执行的操作?

最佳答案

angular.module('yourModule', [])
  .controller('yourController', ['$scope', '$document', function($scope, $document) {
      $document.on('keydown', function(e){
          if(e.which === 8 && ( e.target.nodeName !== "INPUT" && e.target.nodeName !== "SELECT" ) ){ // you can add others here inside brackets.
              e.preventDefault();
          }
      });

    }
  ]);

除非任何输入标记处于事件状态,否则它将阻止退格导航。

我们还没有对文本区域进行处理,因此它不允许在文本区域上退格。

这是演示 http://plnkr.co/edit/ZXtiJNI0a73c0SwIQ7mI?p=preview

关于javascript - 有没有办法防止整个 AngularJS Web 应用程序中的退格导航?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37720598/

相关文章:

javascript - 如何获取字符串的所有可能重叠匹配项

javascript - Angularjs:ng-model 绑定(bind)在第一个 AJAX 请求后不起作用

angularjs - 当插入指令属性时,如何避免启动时的竞争条件?

ios - iOS 上的 Chrome 浏览器在重新加载时使用 ngRepeat 过度滚动

angularjs - 在基于浏览器的应用程序中,我在哪里存储 OAuth 刷新 token

AngularJS 找不到我的 Controller

Javascript 和提升

javascript - 如何用js使canvas动画化

javascript - 在原型(prototype) $$() 中获取具有相同选定值的所有选择?

javascript - 如何更改 window.location 整个 uri ,而不设置整个 url ?