回车键和button按钮都绑定同一个事件,如何避免按回车的时候button重复点击

保存一个全局变量,用来记录Button的焦点状态

<button onclick="login();" onfocus="window.buttonIsFocused=true;" onblur="window.buttonIsFocused=false;">登录</button>

然后,在keydown回调中增加一次校验就可以了:

document.onkeydown = function(event){
  var e = event || window.event; //兼容ie
  switch(e.keyCode) {
    case 13: // enter 键
      if (!window.buttonIsFocused) login(); // login()是封装登录的方法
      break; 
  }
};

 

posted @ 2016-11-24 15:27  Ann丶  阅读(3358)  评论(0编辑  收藏  举报