如何检测支撑行程
How to detect brace stroke
我正在寻找检测牙套的通用解决方案:{
或 }
。
我有一个 azety 键盘,我需要使用 ALT GR
笔画来键入它们,它们分别位于 4 和 + 键上。
因为它在 qwerty 键盘上不一样,可能还有其他配置,
我不知道这些字符是否只是根据 keyup
侦听器返回的事件给出的信息输入的,我只知道 4
已被按下(Chrome 没有事件让我知道 alt gr
已被推送)。
然而,如果我使用 keypress
事件,我会得到正确的代码。
但是 keyup
对我来说更可取。
var element = document.getElementById('textbox');
element.onkeyup = function(evt){
console.log("keyup");
console.log(evt.which);
};
element.onkeypress = function(evt){
console.log("keypress");
console.log(evt.which);
};
<textarea id="textbox"></textarea>
使用该代码,我在输入 {
时得到此输出:
keypress
123 // { key code
keyup
52 // 4 key code
keyup
225 //alt gr key code
那么,是否有独立于键盘配置的解决方案来检测大括号?
AltGr 与 Ctrl-Alt 相同,您可以在检查时询问修饰符。
你必须知道同一个键盘可以改变每个键的位置的配置。我有一个 Spanish/English windows 配置,我在同一天多次更改布局(这会更改 { 和 } 的位置)。
您必须使用按键
我正在寻找检测牙套的通用解决方案:{
或 }
。
我有一个 azety 键盘,我需要使用 ALT GR
笔画来键入它们,它们分别位于 4 和 + 键上。
因为它在 qwerty 键盘上不一样,可能还有其他配置,
我不知道这些字符是否只是根据 keyup
侦听器返回的事件给出的信息输入的,我只知道 4
已被按下(Chrome 没有事件让我知道 alt gr
已被推送)。
然而,如果我使用 keypress
事件,我会得到正确的代码。
但是 keyup
对我来说更可取。
var element = document.getElementById('textbox');
element.onkeyup = function(evt){
console.log("keyup");
console.log(evt.which);
};
element.onkeypress = function(evt){
console.log("keypress");
console.log(evt.which);
};
<textarea id="textbox"></textarea>
使用该代码,我在输入 {
时得到此输出:
keypress
123 // { key code
keyup
52 // 4 key code
keyup
225 //alt gr key code
那么,是否有独立于键盘配置的解决方案来检测大括号?
AltGr 与 Ctrl-Alt 相同,您可以在检查时询问修饰符。
你必须知道同一个键盘可以改变每个键的位置的配置。我有一个 Spanish/English windows 配置,我在同一天多次更改布局(这会更改 { 和 } 的位置)。
您必须使用按键