我有一个小问题,试图以编程方式找出一个字符的键码值。这就是我目前所拥有的。

var delimiter = ',';

//some where down the page

control.keyup(function(e)
{
    var key = delimiter .charCodeAt(0);
    if(e.keycode == key)
    {
       //do something
    }
}


因此,当我按','时,键盘上的键值为44,而e.keycode为188。如何找出变量定界符的键值?

最佳答案

keyup事件返回的键码不是ASCII代码。如果切换到keypress事件,则可以获取ASCII代码。此值应与charCodeAt接收的值匹配,该值将返回字符的unicode值,该值恰好与前128个字符的ASCII代码对齐。参见此reference

var delimiter = ',';
var key = delimiter.charCodeAt(0);
document.getElementById("test").onkeypress = function(e){
    if((e.keyCode || e.which) == key){
       alert("Cat's out of the bag! OHHH YEAH!");
    }
};

关于javascript - 如何在javascript中找出char的键码值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17082813/

10-12 00:49