假设我正在侦听输入字段上的keydown事件:
$input.on('keydown', function(e) {
});
我实际上想和Shift键一起听数字键。所以基本上我想确定用户是否将一个数字与shift键组合在一起。
对于数字块,这可以按预期工作:
if(e.shiftKey && e.which >= 98 && e.which < 106) {
var number = e.which - 98;
}
我希望&#34;正常&#34;但是,至少在Safari 7.1中,按shift + 2返回keyCode 222(引号),shift + 7返回191(斜线)。
我的问题:为什么这种不一致的行为?如何获得实际的keyCode(例如,对于shift + 2意味着49)?