JavaScript - 如何通过键盘使用 onclick 函数

Sas*_*ash 6 javascript onclick keyboard-events

我有 HTML 和 JavaScript 代码:

<button id="Z">Z</button>

var btnZ = document.getElementById("Z");
btnZ.onclick = function() {
    // Some code
}
Run Code Online (Sandbox Code Playgroud)

我想当btnZ.onclick用户按键盘上的“Z”时执行功能。如何在不重复函数内部代码的btnZ.onclick情况下做到这一点?

jsh*_*ton 6

您应该有一个执行代码的通用函数,但还有两个事件函数。

function do() {
     //some code
}
btnZ.onclick = function(e) {
    do();
};
btnZ.onkeydown = function(e) {
    var keyCode = e.keyCode;

    if(keyCode === 90) do();
}
Run Code Online (Sandbox Code Playgroud)

仅当用户专注于该元素时这才有效。


Al.*_*.G. 4

用这个:

function clicked () {
    alert('clicked!');
    //some code
}
document.onkeydown = function (e) {
    var keyCode = e.keyCode;
    if(keyCode == 90) {
        clicked();
    }
};
btnZ.onclick = clicked;
Run Code Online (Sandbox Code Playgroud)