Javascript 检测keyCode的值是否等于数组中的项

Javascript 检测keyCode的值是否等于数组中的项,javascript,char,keycode,Javascript,Char,Keycode,我正在开发一个小型打字机应用程序,我在检测一个按下的按钮是否对应于一个span元素的值时遇到了问题 基本上,我有两个div,其中包含具有不同字母值的跨度。 我将跨度存储在一个名为leftPartSpans和rightPartSpans的变量中。因此,我基本上尝试使用循环遍历每个项目,看看其中是否有任何字符对应于keyCode: for (i=0; i<leftPartSpans.length; i++) { if(pressedKey == leftPartSpa

我正在开发一个小型打字机应用程序,我在检测一个按下的按钮是否对应于一个span元素的值时遇到了问题

基本上,我有两个div,其中包含具有不同字母值的跨度。 我将跨度存储在一个名为leftPartSpans和rightPartSpans的变量中。因此,我基本上尝试使用循环遍历每个项目,看看其中是否有任何字符对应于keyCode:

for (i=0; i<leftPartSpans.length; i++) {

            if(pressedKey == leftPartSpans[i].nodeValue) {

                leftPart.style.webkitTransform = "rotateZ(20deg)";

            }

        }
不幸的是,这不起作用。您可以在以下位置查看整个项目:

提前感谢,, Georgi

keydown和keydup不会为大写字母和小写字母发送不同的键码。因此,当您使用这些事件中的任何一个时,您的按键将始终是大写字母。由于所有的跨距都包含小写字母,所以它们永远不会匹配,也永远不会触发if块

您可以使用按键,它将为大写和小写发送不同的按键代码

document.querySelector('body').addEventListener('keypress', function(e) {
  //...
});