javascript - 如何检测支撑行程

标签 javascript keyboard keyboard-events

我正在寻找检测大括号的通用解决方案:{}。 我有一个 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 相同,您可以在检查时询问修饰符。

您必须知道,同一个键盘可以更改每个键位置的配置。我有一个西类牙语/英语窗口配置,我在同一天多次更改布局(这会更改 { 和 } 的位置)。

你必须使用按键

关于javascript - 如何检测支撑行程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31952198/

相关文章:

javascript - JQuery 控制台错误

javascript - 使用 cake php 和 javascript 过滤重复行

java - 如何将十进制代码点转换为 UTF-16 Hex(java 语法)?

android - 如何在 Android 中设置/调用新的输入法

javascript - 像Windows 8 Metro IE一样创建键盘 "Extension"

javascript - Mac 中的 Capslock 不会触发 keyDown 事件

javascript - 将输入值格式化为用户类型

javascript - 如何在 React Native 中组件的渲染函数内调用对象内的类?

ios - scrollView 的 ContentInset

qt - 捕获 Qt 修饰键释放