jQuery 注册 2 个键事件侦听器时遇到问题

jQuery trouble registering 2 keyevent listeners

本文关键字:侦听器 遇到 问题 事件 注册 jQuery      更新时间:2023-09-26

我希望能够收听多个按钮按下,如下所示:

$("#body").keypress(function(event) {
        if (event.which == 49) { //1
         //do something
        }
        if (event.which == 68) { //d 
             //do something else
        }
});

但是我无法拦截"d"按键。有什么建议吗?

干杯

您可以使用 switch 语句,允许 100(小写"d")下降到 68(大写"D"):

$("#foo").on("keypress", function(e){
    switch( e.which ) {
        case 49 :
          alert( "You pressed a 1" );
          break;
        case 100:
        case 68 :
          alert( "You pressed a 'd'" );
    }
});​

小提琴:http://jsfiddle.net/jonathansampson/CJKUh/