我正在编写一个小的javascript应用程序,我需要控制屏幕事件(图像外观)。例如,如果image_1出现在screem上,我需要按一个键(例如右箭头),如果image_2出现,我需要按另一个键(例如左箭头)。如果它们同时出现,我需要按两个键。
问题在于,如果我同时按下两个键,则不会再启动任何键事件,我的意思是当下一个图像出现时我按下一个键但没有javascript事件。
我让代码变得简单:
<html lang="es">
<head>
<meta charset="utf-8">
<title>Test1</title>
<script>
function addE () {
if (document.addEventListener) {// standard W3C DO
document.addEventListener("keydown",test1,false);
}
}
// ejemplo equivalente para quitar el evento
function removeE () {
if (document.removeEventListener) {// standard W3C DOM
document.removeEventListener("keydown",test1,false);
}
}
function test1 (e) {
alert('test');
if (!e) var e = window.event;
switch (e.keyCode) {
case 39:
alert(e.keyCode);
break;
case 37:
alert(e.keyCode);
break;
default:
alert(e.keyCode);
}
}
window.onload = function() {
addE();
alert('Listener added');
}
</script>
</head>
<body>
</body>
</html>
提前致谢
答案 0 :(得分:0)
正如GonçaloVieira和Andy E建议的那样,问题不在于我的代码,而是我正在使用的调试警报。当更改为更好的调试解决方案console.log()时,一切正常