下面的代码仅适用于拉丁语n,但如何使其适用于西里尔语-
if(event.keyCode === 78) {
console.log('okay');
}
如果我更改与美国不同的键盘布局并单击 latin N
下面的代码仅适用于拉丁语n,但如何使其适用于西里尔语-
if(event.keyCode === 78) {
console.log('okay');
}
如果我更改与美国不同的键盘布局并单击 latin N
我不太确定你在问什么,但我假设你想获得与在键盘上输入西里尔字符相关的字符。如果是这样,我想当keydown
正确keyup
的事件是keypress
. 告诉你按下的物理键,同时keydown
告诉你输入的字符。这是一个简单的跨浏览器示例,说明如何获取键入的字符:keyup
keypress
document.onkeypress = function(e) {
e = e || window.event;
var charCode = (typeof e.which == "number") ? e.which : e.keyCode;
var typedChar = String.fromCharCode(charCode);
alert("Typed character: " + typedChar);
};
这是 JavaScript 键盘事件的权威参考:http: //unixpapa.com/js/key.html
Cyrillic н不是 UTF8 的前 127 个字符的一部分,因此您的代码不起作用。如果有意义的话,您可以尝试为н使用适当的代码,即 1085:
if(event.keyCode === 1085) {
console.log('okay');
}
作为旁注,西里尔字母和拉丁字符之间没有一对一的关系 - 我建议在尝试发明之前三思而后行。