这段代码会在Chrome的JavaScript控制台&我不知道为什么。谷歌搜索有类似问题的人后,我还没有找到任何D:
错误消息表明问题出在event.which()
上,但我没有看到我的使用方式与预期不同,其他类似的人似乎没有问题。
$(document).keypress(function(event) {
switch (event.which()) {
case 38 : keyNorthPressed = true;
break;
case 39 : keyEastPressed = true;
break;
case 40 : keySouthPressed = true;
break;
case 41 : keyWestPressed = true;
break;
}
});
提前致谢。
答案 0 :(得分:1)
答案here。
有两种方法可以检索事件密钥代码:
event.keyCode or event.which
您的代码应为:
$(document).keypress(function(event) {
var code = event.keyCode || event.which;
switch(code) {
case 38 : keyNorthPressed = true;
break;
case 39 : keyEastPressed = true;
break;
case 40 : keySouthPressed = true;
break;
case 41 : keyWestPressed = true;
break;
}
});
event.keyCode和event.which是属性,而不是方法,你不能用()调用它们。