JS/jQuery 中的绑定箭头键

2022-08-29 23:19:28

如何在Javascript和/或jQuery中将函数绑定到左右箭头键?我查看了jQuery的js-hotkey插件(包装内置的绑定函数以添加参数以识别特定键),但它似乎不支持箭头键。


答案 1
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)
请注意,现在已弃用。请参阅此示例使用键盘事件.key获取有关检测箭头键的更现代的解决方案。KeyboardEvent.which


答案 2
$(document).keydown(function(e){
    if (e.which == 37) { 
       alert("left pressed");
       return false;
    }
});

字符代码:

37 - 左

38 - 向上

39 - 右

40 - 向下