取消按键事件代码中的按键事件代码

时间:2018-07-09 11:58:41

标签: javascript jquery

这是我的密码

    $(textBoxElement).keydown(function(e)
 {
  if(e.keyCode==40)
   {
    //some codes
    //cancel key up event 
   }
 }
)
 $(textBoxElement).keyup(function()
  {
    //some codes
  }

我希望用户在按下箭头键时不运行事件代码

返回假;和e.stopPropagation;不工作

1 个答案:

答案 0 :(得分:3)

该事件仍将被触发,无法阻止该事件触发-但是您可以更改的是如何处理该事件。以下面的代码为例:

var disableKeyUp = false;
$(textBoxElement).keydown(function(e) {
  disableKeyUp = true
})
$(textBoxElement).keyup(function(e) {
  if (!disableKeyUp) {
    // handle keyup event behavior
  }
})

我们使用布尔变量来禁用键入行为,因为只有将disableKeyUp设置为false时,才会发生键入事件的行为。

别忘了在需要时重新启用keyup行为:)