Javascript 将字符串转换为 alt 快捷键

Javascript convert string to alt shortcut key

在 JS 中,我可能有这个快捷方式来触发事件:

alt + s

我有一个选项 s。如何将 s 转换为代表字母的正确数字?

在我的代码中我会有这样的东西,但是将 98 更改为从函数生成数字的函数,并将字符串作为输入。

if (e.altKey && e.keyCode == 98) {
}

更新

我试过了,但它给出了错误的密钥代码:

var _stringToKey = function() {
    string = '{{key}}';
    return parseInt( string.charCodeAt(0) );
 }

{{key}} 替换为来自 PHP 的字母。

旁注 我不想依赖另一个 JS 插件。

您正在尝试的是存在的!它调用 Mousetrap

https://craig.is/killing/mice

 Mousetrap.bind(['command+k', 'ctrl+k'], function(e) {
    highlight([11, 12, 13, 14]);
    return false;
 });

简单又漂亮。

.charCodeAt(n) 作用于角色。 e.keyCode 在键上工作。

A != a。但是 A 键确实等于 a 键。

'a'.toUpperCase().charCodeAt(0) // 65
'a'.charCodeAt(0)               // 97
'A'.charCodeAt(0)               // 65
'A'.toLowerCase().charCodeAt(0) // 97

基本上,你想要:

 var _stringToKey = function() {
    string = '{{key}}';
    return parseInt( string.toUpperCase().charCodeAt(0) );
}