我想根据键盘上按下的键来设置事件处理程序。这对于常见的键盘字母(如(0-9、A-Z 等)来说相当简单,因为它们在键盘上的位置在所有键盘上几乎相同,并且键码可用于识别按下的键。 (使用 event.which()
)
但是,我想设置处理程序,以便我可以根据键在键盘上的位置来识别它们。例如,美国 (:/;) 与瑞典语 (Ö/ö) 位于同一物理位置,但我希望能够为键盘上的该位置设置一个唯一的处理程序。
在英语中,按“;” event.which()
返回 59
在 Swe 中,按 'ö' event.which()
返回 246
它们都属于键盘上的相同物理位置。
我正在寻找一种解决方案,其中这个物理位置具有唯一 ID。
这是否有可能(不使用可以检测当前语言环境然后使用一些内部 ID 等将键映射到目标语言环境的东西)。
我相信有几种复杂的方法可以解决这个问题,但我对解决这个问题的最简单方法很感兴趣。任何预先编写的库都愉快地接受了。
最佳答案
您必须根据键码映射位置。例如,您可以编写这样的键码; o 映射到 ; 的键码.同样,您需要一个包含围绕该位置解析的所有键码的列表。
抱歉,没有简单的方法。
关于javascript - 识别在 Javascript 中按下的物理键盘按钮,而不考虑当前的语言环境?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9977111/