Event.key === "PfeilRechts"...
Neuer und viel sauberer: Verwendung event.key
. Keine willkürlichen Zahlencodes mehr! Wenn Sie transpilieren oder wissen, dass Ihre Benutzer alle moderne Browser benutzen, verwenden Sie dies!
node.addEventListener('keydown', function(event) {
const key = event.key; // "ArrowRight", "ArrowLeft", "ArrowUp", or "ArrowDown"
});
Ausführliche Behandlung:
switch (event.key) {
case "ArrowLeft":
// Left pressed
break;
case "ArrowRight":
// Right pressed
break;
case "ArrowUp":
// Up pressed
break;
case "ArrowDown":
// Down pressed
break;
}
Moderne Schalterbedienung:
const callback = {
"ArrowLeft" : leftHandler,
"ArrowRight" : rightHandler,
"ArrowUp" : upHandler,
"ArrowDown" : downHandler,
}[event.key]
callback?.()
HINWEIS: Die alten Eigenschaften ( .keyCode
y .which
) sind veraltet.
"w", "a", "s", "d"
für die Richtung, verwenden Sie event.code
Um Benutzer zu unterstützen, die nicht das englische Tastaturlayout verwenden, sollten Sie stattdessen event.code
. Dadurch bleibt die physische Position des Schlüssels erhalten, auch wenn sich das Zeichen ändert.
event.key
wäre , über Dvorak und z auf Azerty, wodurch Ihr Spiel unspielbar wird.
const {code} = event
if (code === "KeyW") // KeyA, KeyS, KeyD
Optimal ist es, wenn Sie auch die Umbelegung von Tasten zulassen, was dem Spieler unabhängig von seiner Situation zugute kommt.
P.S. event.code
ist derselbe für Pfeile
key
Mozilla-Dokumente
code
Mozilla-Dokumente
Unterstützte Browser