可能的复制品: 如何捕捉文本上的输入键,但不移动 + 输入
如何在 JavaScript 中检测 shift + key?
var onkeydown = (function (ev) { var key; var isShift; if (window.event) { key = window.event.keyCode; isShift = !!window.event.shiftKey; // typecast to boolean } else { key = ev.which; isShift = !!ev.shiftKey; } if ( isShift ) { switch (key) { case 16: // ignore shift key break; default: alert(key); // do stuff here? break; } } });
event.shiftKey是一个布尔值。如果按下 Shift 键,则为 true; 如果不按键,则为 false。altKey和 ctrlKey的工作原理是一样的。
event.shiftKey
true
false
altKey
ctrlKey
所以基本上你只需要检测键下降与正常的 onkeydown,并检查这些属性,根据需要。
onkeydown