绑定键盘事件(尤其注意:不能用a标签,不然会失效)
推荐button
- 方法一:ng内置指令
说明:在对应的控制器中的$scope上绑定一个todoSomething方法<button ng-click="login()" ng-keypress="todoSomething($event)" class="btn btn-success btn-lg" ng-disabled="loginForm.$invalid"> 登录 </button>
$scope.todoSomething=function($event){ if($event.keyCode==13){//回车 login(); } }
- 方法二:自定义指令
html
指令<button ng-click="login()" ng-enter="login()" class="btn btn-success btn-lg" ng-disabled="loginForm.$invalid"> 登录 </button>
myApp.directive('ngEnter', function () { return function (scope, element, attrs) { element.bind("keydown keypress", function (event) { if (event.which === 13) { scope.$apply(function () { scope.$eval(attrs.ngEnter); }); event.preventDefault(); } }); }; });
总结:两种方法都能实现敲回车登录的功能,不过推荐指令的方式,对$scope的污染比较低
文/奋进的小莫(简书作者)
原文链接:http://www.jianshu.com/p/e76e50bb3a25
原文链接:http://www.jianshu.com/p/e76e50bb3a25