Control (Strg) Keycode in JavaScript

Für Control (Strg) gilt: event.key ist Control, event.code ist ControlLeft / ControlRight und der veraltete keyCode ist 17. Drück eine beliebige Taste im Key Code Finder, um ihre Werte live zu sehen.

Aktualisiert am

EigenschaftWert
event.keyControl
event.codeControlLeft / ControlRight
event.keyCode / which (veraltet)17

So erkennst du Control (Strg)

document.addEventListener('keydown', (event) => {
  if (event.key === 'Control') {
    // Control (Ctrl) was pressed
  }
});

Verwende event.key, um auf die Bedeutung der Taste zu reagieren (sie folgt dem Tastaturlayout), und event.code für ihre physische Position, zum Beispiel WASD in Spielen. keyCode und which sind veraltet: Sie funktionieren noch, aber ihre Werte unterscheiden sich je nach Browser und Layout.

Wie Browser Control (Strg) behandeln

Prüfe event.ctrlKey auf Tastenkürzel. Auf einem Mac erwarten Nutzer stattdessen Cmd. Teste event.metaKey dort oder akzeptiere beides.

In React

<input onKeyDown={(e) => { if (e.key === 'Control') { /* … */ } }} />

Häufige Fragen

Was ist der keyCode für Control (Strg)?
17. Er ist allerdings veraltet: Verwende im neuen Code event.key („Control“) oder event.code (ControlLeft).
Was ist der Unterschied zwischen event.key und event.code?
event.key ist das Zeichen oder die Aktion, die die Taste mit dem aktuellen Layout auslöst. event.code ist die physische Position der Taste und auf jedem Layout gleich.
Soll ich keydown oder keypress verwenden?
keydown. Das keypress-Event ist veraltet und wird bei Tasten, die keine Zeichen erzeugen, wie Escape oder die Pfeiltasten, nicht ausgelöst.