Javascript中未定义键代码

Javascript中未定义键代码,javascript,frontend,Javascript,Frontend,大家好,我想用e来访问KeyCode,但当我在浏览器中运行它时,它说“e”没有定义 功能按键(e) { var b=评估值(如钥匙代码); 警报(b); } 首先,它将不起作用,因为您没有为函数提供侦听器,所以它永远不会对文档起作用 即使您修复了此错误,并且您的代码如下所示: document.addEventListener('keypress',keypress); 功能按键 { var b=评估值(如钥匙代码); 警报(b); } 您仍然无法获得肯定的结果,因为您正在尝试获取具有“K

大家好,我想用e来访问KeyCode,但当我在浏览器中运行它时,它说“e”没有定义


功能按键(e)
{
var b=评估值(如钥匙代码);
警报(b);
}

首先,它将不起作用,因为您没有为函数提供侦听器,所以它永远不会对文档起作用

即使您修复了此错误,并且您的代码如下所示:

document.addEventListener('keypress',keypress);
功能按键
{
var b=评估值(如钥匙代码);
警报(b);
}
您仍然无法获得肯定的结果,因为您正在尝试获取具有“KeyCode”属性的密钥代码。JavaScript是一种驼峰式语言,所以请使用“keyCode”。如果你不这样做,你总是会得到一个“未定义”的结果

第三,不要使用eval,在这种情况下它不做任何事情,而且是不必要的,所以删除它

代码应该如下所示:

document.addEventListener('keypress',onKeyPress);
按键功能
{
设b=e.keyCode;
警报(b);
}

尝试使用
e.keyCode
代替。不要使用
eval()
。请记住
keyCode
是。此外,正如上面提到的人所说,“keypress”已经很旧了,因为您只需将侦听器中的事件从当前的“keypress”替换为“keydown”。这两者之间的区别很小,而且与浏览器的兼容性更好。我不确定“它永远不会对文档起作用”是什么意思,但使用DOM OneEvent处理程序可以很好地工作,如问题中的可执行代码段所示。当您运行该函数时,它会提醒
undefined
,这意味着该函数已执行。该函数已执行,但不是在文档对象上执行,而是在输入对象上执行,这只是作为一个示例显示该函数起作用。监听器是否将从DOM.Thx中侦听另一个元素以获得您的帮助,这已经是他的选择了。你给我的信息非常有用。干得好