当我运行以下代码并在我的 Mac 上按下命令键(使用 Chrome)时,metaKey 设置为 keydown 而不是 keyup。难道我做错了什么?我只是想跟踪被按下的元键,这样我就可以在我的 JavaScript 中使用它——如果有更好的方法,请告诉我:-)
var metaPressed = false;
$(document).keydown(function(e) {
console.log('keydown ' + e.keyCode);
if (e.metaKey || e.ctrlKey) {
console.log('meta pressed');
metaPressed = true;
}
});
$(document).keyup(function(e) {
console.log('keyup ' + e.keyCode);
if (e.metaKey || e.ctrlKey) {
console.log('meta unpressed');
metaPressed = false;
}
});
这是相关键的控制台输出
// Pressing cmd
keydown 91
meta pressed
keyup 91
// Pressing control
keydown 17
meta pressed
keyup 17
// Pressing non-meta like spacebar
keydown 32
keyup 32