javascript 取消按键事件代码中的按键抬起事件代码

lb3vh1jj  于 2022-12-28  发布在  Java
关注(0)|答案(1)|浏览(164)

这是我的代码:

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

我希望用户在按下向下箭头键时keyup事件代码不运行
return false;e.stopPropagation;不起作用。

mkshixfv

mkshixfv1#

事件仍然会被触发,没有办法阻止事件的触发--但是你可以改变的是你如何处理那个事件。以下面的代码为例:

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

我们使用布尔变量来禁用keyup行为,因为只有当disableKeyUp设置为false时,才会发生keyup事件行为。
不要忘记在您确实需要时重新启用keyup行为:)

相关问题