Oneshot Gems
Jetzt spielen

Für Spieleentwickler

Geben Sie Tastatureingaben einen klaren Vertrag

Die Tastatursteuerung ist zuverlässig, wenn jede Taste eine klare Aufgabe hat und das Spiel zwischen einem kurzen Tastendruck und einer gehaltenen Taste unterscheidet. Notiere die vorgesehene Belegung vor der Umsetzung: Zum Beispiel lenken die Pfeiltasten, die Leertaste führt eine Aktion aus und Escape öffnet nur dann ein Pausenmenü, wenn es eines gibt. Teste anschließend Fokus, Wiederholung und Loslassen, statt nur ein einzelnes keydown zu prüfen.

Auf dieser Seite

Wählen Sie Tasten nach Bedeutung und Layout aus

Verwende KeyboardEvent.key, wenn die Aktion vom Zeichen abhängen soll, das durch das Tastaturlayout erzeugt wird. Verwende KeyboardEvent.code, wenn die physische Position der Taste wichtiger ist. Das macht bei unterschiedlichen Tastaturlayouts einen Unterschied. Biete eine einheitliche Belegung an und zeige sie in den Anweisungen, statt WASD als selbstverständlich vorauszusetzen.

Fange keine Tasten ab, solange ein Textfeld oder ein bearbeitbares Steuerelement den Fokus hat. Unterbinde Browser-Standardverhalten wie das Scrollen der Seite nur dann, wenn die Spielfläche diese Taste aktiv verarbeitet. So verschluckt das Spiel weder normale Texteingaben noch stört es die Browsernavigation, bevor die Person den interaktiven Bereich betritt.

Gedrückte Tasten und Loslassen nachverfolgen

Setze bei kontinuierlicher Bewegung den Haltezustand einer Taste auf keydown und lösche ihn auf keyup. Browser können keydown wiederholen, solange eine Taste gedrückt bleibt. Eine einmalige Aktion wie Springen sollte Wiederholungen deshalb ignorieren, sofern sie nicht ausdrücklich vorgesehen sind. Lösche gehaltene Tasten, wenn das Spiel den Fokus verliert oder das Fenster unscharf wird, denn keyup erreicht das Spiel möglicherweise nicht mehr, sobald der Fokus woanders liegt.

Teste zwei Tasten gleichzeitig, langes Gedrückthalten, kurzes Antippen sowie den Fokusverlust und die Rückkehr zum Spiel. Ignoriere wiederholte keydown-Ereignisse bei einmaligen Aktionen, sofern Wiederholung nicht beabsichtigt ist. MDN dokumentiert KeyboardEvent.key, KeyboardEvent.code und Ereignistypen; wähle die Eigenschaft passend zur Tastenbelegung.

Fragen zu ⁨Tastatursteuerung für Browserspiele⁩

Soll ich für eine Spielsteuerung KeyboardEvent.key oder KeyboardEvent.code verwenden?

Verwende KeyboardEvent.key, wenn das Zeichen oder das Tastaturlayout die Aktion bestimmen soll. Verwende KeyboardEvent.code, wenn die physische Tastenposition maßgeblich ist. Lege die Wahl offen und teste andere Layouts.

Warum sollte ich gehaltene Tasten löschen, wenn die Seite den Fokus verliert?

Nach einem Fokuswechsel liefert der Browser das Loslassereignis keyup möglicherweise nicht mehr an das Spiel. Durch das Löschen des Eingabestatus bleibt keine Bewegung aktiv, wenn die Person zurückkehrt.

Weiterlesen

Etwas nicht mehr aktuell? Korrektur melden

Spiel weiter.

Kostenlose Browserspiele, jederzeit bereit. Entdecke etwas, das dir Spaß macht, und finde dein nächstes Lieblingsspiel.

Folge deiner Neugier