设置 ctrl + 键按下事件侦听器时出现问题(未检测到)
Trouble setting up a ctrl + keydown event listener (Not detected)
我想要一个事件侦听器,在同时按下 ctrl + 左/右箭头键后控制台记录文本字符串。但是,以下函数不会选取该事件:
$(document).keydown(function (event) {
if (event.which === 37 && event.ctrlKey) {
console.log('ctrl-left');
}
if (event.which === 39 && event.ctrlKey) {
console.log('ctrl-right');
}
else {
console.log('nothing detected');
}
});
知道我做错了什么吗?
if 分支中存在问题,按CTRL+Left
键可同时记录ctrl-left
和nothing detected
。
此外,需要停止浏览器的默认事件处理以避免出现问题。
这在Firefox 44.0.2上对我有用:
$(document).keydown(function (event) {
event.preventDefault();
if (event.which === 37 && event.ctrlKey) {
console.log('ctrl-left');
} else if (event.which === 39 && event.ctrlKey) {
console.log('ctrl-right');
} else {
console.log('nothing detected');
}
});
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 将PHP变量传递给jQuery时遇到问题
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 参数变量出现ngTable指令问题
- Facebook JS SDK注销问题-预期检测到可疑登录
- jQuery复选框未选中检测问题
- 检测 iframe 中的连接问题
- 设置 ctrl + 键按下事件侦听器时出现问题(未检测到)
- 人脸 API 检测画布问题
- 茉莉花在检测到复选框时遇到问题
- 检测导致冻结等问题的错误 JS
- 碰撞检测问题;对某些条件的奇怪反应
- Adblock检测问题
- ReactJS -检测状态变化的问题
- 模式URL检测的问题.在JavaScript中使用正则表达式等
- 带有平台检测的if-else语句的问题
- Chrome文件夹上传API.检测支持&使用JS/JQuery解决问题
- 如何检测页面底部?手机上的问题
- 浏览器检测 Opera 的问题
- 谷歌浏览器的问题:滚动到底部检测缩小