如何在Javascript和/或jQuery中将函数绑定到左右箭头键?我查看了jQuery的js-hotkey插件(包装了内置的绑定函数以添加参数来识别特定的键),但它似乎不支持箭头键。
发布于 2011-05-16 04:43:11
document.onkeydown = function(e) {
switch(e.which) {
case 37: // left
break;
case 38: // up
break;
case 39: // right
break;
case 40: // down
break;
default: return; // exit this handler for other keys
}
e.preventDefault(); // prevent the default action (scroll / move caret)
};
如果您需要支持IE8,请以e = e || window.event; switch(e.which || e.keyCode) {
启动函数体。
(编辑2020)
请注意,KeyboardEvent.which
现在已弃用。有关检测箭头键的更现代解决方案,请参阅this example using KeyboardEvent.key
。
发布于 2009-09-09 23:48:39
$(document).keydown(function(e){
if (e.which == 37) {
alert("left pressed");
return false;
}
});
字符代码:
37 -左侧
38个以上
39 -右
40 - down
发布于 2009-09-09 23:49:22
您可以使用箭头键的keyCode (37、38、39和40表示左、上、右和下):
$('.selector').keydown(function (e) {
var arrow = { left: 37, up: 38, right: 39, down: 40 };
switch (e.which) {
case arrow.left:
//..
break;
case arrow.up:
//..
break;
case arrow.right:
//..
break;
case arrow.down:
//..
break;
}
});
检查上面的示例here。
https://stackoverflow.com/questions/1402698
复制相似问题