键盘序列单击按钮

时间:2015-01-14 18:34:47

标签: javascript dom javascript-events

我希望系统管理员可以在应用程序中轻松创建新帐户。我在想按键alt和shift会触发我的应用程序中的“创建新用户”按钮或defaultButton2。我可以使用一个键来工作,但组合两个键似乎不起作用。

$(document).ready(function () {
  $("input").bind("keydown", function (event) {
    var keycode = (event.keyCode ? event.keyCode : 
          (event.which ? event.which : event.charCode));
    if (keycode == 16 && keycode == 18) {
        document.getElementById('defaultButton2').click();
        return false;
    } else {
        return true;
    }
  });
});

2 个答案:

答案 0 :(得分:1)

keydown事件(mdn)具有用于shiftkey,altkey和control键的布尔值,用于检测何时按下按钮组合。因此,您可以检查这些。 keyCode仅适用于最后一个按键。

如果您想检测其他密钥,例如如果同时按下“a”和“s”,你需要乱搞自定义keydown和keyup事件并自己跟踪事物。

$('body').on( 'keydown', function(e) {
  if( e.altKey && e.shiftKey ) {
    console.log( "Both pressed!" );
  }
} );
body {
  background-color: #DDDDDD;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

Click Here

答案 1 :(得分:0)

你几乎做对了......

$(document).ready(function(){
  $("input").keydown(function(e) {
    // 18 is the key for alt
    if(e.keyCode == 18 && e.shiftKey) {
        $("button").click();
    }
  });
});

这是一个有效的JSFiddle,如果您正在寻找JS密码,请查看here