javascript - 取消按键事件代码中的按键事件代码
问题描述
这是我的代码
$(textBoxElement).keydown(function(e)
{
if(e.keyCode==40)
{
//some codes
//cancel key up event
}
}
)
$(textBoxElement).keyup(function()
{
//some codes
}
我希望用户在按下向下箭头键时不运行 keyup 事件代码
返回假;和 e.stopPropagation;不工作
解决方案
该事件仍将被触发,无法阻止该事件触发 - 但您可以更改的是您处理该事件的方式。以下面的代码为例:
var disableKeyUp = false;
$(textBoxElement).keydown(function(e) {
disableKeyUp = true
})
$(textBoxElement).keyup(function(e) {
if (!disableKeyUp) {
// handle keyup event behavior
}
})
我们使用布尔变量来禁用 keyup 行为,因为只有当disableKeyUp
设置为时false
,keyup 事件行为才会发生。
不要忘记在需要时重新启用 keyup 行为:)
推荐阅读
- csv - 仅为“新”文件将 XLS 转换为 CSV
- css - CSS - one div fit to the size, other div force size
- sql - 如何在 Presto SQL 中将 unix 时间戳转换为日期并从中提取月份
- javascript - Manually edit child row in shiny datatable
- java - How to use java 8 streams to make a new list by using another's list objects values with filter?
- java - 静态嵌套类的“静态”行为是否有所不同?
- node.js - 部署 node.js / express 服务器时,ApplicationStart 上的 AWS Codedeploy 超时
- json - 'NoneType' object has no attribute 'read' when reading from JSON file
- pandas - 将按计算字段分组为熊猫中的新列时出错
- reporting-services - 运行值 CountDistinct 和逻辑表达式?