Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

KeyboardEvent: keyCode-Eigenschaft

Veraltet: Diese Funktion wird nicht mehr empfohlen. Obwohl einige Browser sie möglicherweise noch unterstützen, könnte sie bereits aus den relevanten Webstandards entfernt worden sein, in Kürze entfernt werden oder nur noch aus Kompatibilitätsgründen bestehen. Vermeiden Sie die Verwendung und aktualisieren Sie vorhandenen Code, falls möglich; siehe die Kompatibilitätstabelle am Ende dieser Seite, um Ihre Entscheidung zu unterstützen. Beachten Sie, dass diese Funktion jederzeit aufhören könnte zu funktionieren.

Die veraltete, schreibgeschützte KeyboardEvent.keyCode-Eigenschaft stellt einen system- und implementierungsabhängigen numerischen Code dar, der den unmodifizierten Wert der gedrückten Taste identifiziert.

Dies ist in der Regel der dezimale ASCII- (RFC 20) oder Windows 1252-Code, der der Taste entspricht. Wenn die Taste nicht identifiziert werden kann, ist dieser Wert 0.

Sie sollten die Verwendung dieser Eigenschaft nach Möglichkeit vermeiden; sie ist seit einiger Zeit veraltet. Stattdessen sollten Sie KeyboardEvent.code (für die physisch gedrückte Taste) oder KeyboardEvent.key (für das Zeichen, dem die Taste zugeordnet ist) verwenden. Überprüfen Sie die Kompatibilität für beide Eigenschaften, wenn Sie sehr alte Browser anvisieren.

Hinweis: Webentwickler sollten das keyCode-Attribut für druckbare Zeichen bei der Verarbeitung von keydown- und keyup-Ereignissen nicht verwenden. Wie oben beschrieben, ist das keyCode-Attribut für druckbare Zeichen nicht nützlich, insbesondere nicht für diejenigen, die mit gedrückter Shift- oder Alt-Taste eingegeben werden.

Wert von keyCode

Druckbare Tasten in Standardposition

Der Wert von Tastenereignissen, die durch das Drücken oder Loslassen druckbarer Tasten in Standardposition verursacht werden, ist nicht zwischen Browsern kompatibel.

IE zeigt einfach den nativen virtuellen Tastencode-Wert als KeyboardEvent.keyCode an.

Google Chrome, Chromium und Safari müssen den Wert aus dem Eingabezeichensatz bestimmen. Wenn das eingetippte Zeichen mit dem US-Tastaturlayout eingegeben werden kann, verwenden sie den keyCode-Wert auf dem US-Tastaturlayout.

Firefox erhält keyCode-Werte aus ASCII-Zeichen, die durch die Taste eingegeben werden können — auch mit Shift-Modifikatoren oder einem ASCII-fähigen Tastaturlayout. Siehe die folgenden Regeln für Details:

  1. Wenn das System Windows ist und der native Tastencode der gedrückten Taste angibt, dass die Taste a-z oder 0-9 ist, verwenden Sie einen Tastencode dafür.
  2. Wenn das System Mac ist und der native Tastencode der gedrückten Taste angibt, dass die Taste 0-9 ist, verwenden Sie einen Tastencode dafür.
  3. Wenn die gedrückte Taste ein ASCII-Alphabetiv- oder -Ziffernzeichen ohne Modifikatortaste eingibt, verwenden Sie einen Tastencode dafür.
  4. Wenn die gedrückte Taste ein ASCII-Alphabetiv- oder -Ziffernzeichen mit einem Shift-Tastenmodifikator eingibt, verwenden Sie einen Tastencode dafür.
  5. Wenn die gedrückte Taste ein anderes ASCII-Zeichen ohne Modifikatortaste eingibt, verwenden Sie einen Tastencode dafür.
  6. Wenn die gedrückte Taste ein anderes ASCII-Zeichen mit einem Shift-Tastenmodifikator eingibt, verwenden Sie einen Tastencode dafür.
  7. Andernfalls, d.h. gedrückte Taste gibt ein Unicode-Zeichen ein:
    1. Wenn das Tastaturlayout ASCII-fähig ist (d.h. ASCII-Alphabete eingeben kann), verwenden Sie 0 oder berechnen Sie mit den folgenden zusätzlichen Regeln.
    2. Andernfalls, d.h. das Tastaturlayout ist nicht ASCII-fähig, verwenden Sie das ASCII-fähige Tastaturlayout, das in der Umgebung mit der höchsten Priorität installiert ist:
      1. Wenn die gedrückte Taste auf dem alternativen Tastaturlayout ein ASCII-Alphabetiv- oder -Ziffernzeichen eingibt, verwenden Sie einen Tastencode dafür.
      2. Andernfalls verwenden Sie 0 oder berechnen Sie mit den folgenden zusätzlichen Regeln.

Gecko setzt keyCode-Werte von Interpunktionstasten so weit wie möglich (wenn Punkt 7.1 oder 7.2 in der obigen Liste erreicht wird) mit den folgenden Regeln:

Warnung: Der Zweck dieser neuen zusätzlichen Regeln besteht darin, dass Benutzer, deren Tastaturlayouts Unicode-Zeichen auf Interpunktionstasten im US-Tastaturlayout abbilden, Webanwendungen verwenden können, die Firefox nur mit ASCII-fähigen Tastaturlayouts oder nur mit einem US-Tastaturlayout unterstützen. Andernfalls könnten die neu zugewiesenen keyCode-Werte mit anderen Tasten in Konflikt stehen. Zum Beispiel, wenn das aktive Tastaturlayout Russisch ist, haben sowohl die “Period”-Taste als auch die “Slash”-Taste den keyCode-Wert 190 (KeyEvent.DOM_VK_PERIOD). Wenn Sie diese Tasten unterscheiden müssen, aber nicht alle Tastaturlayouts der Welt selbst unterstützen möchten, sollten Sie wahrscheinlich KeyboardEvent.code verwenden.

  1. Wenn macOS oder Linux ausgeführt wird:

    1. Wenn das aktive Tastaturlayout nicht ASCII-fähig ist und ein alternatives ASCII-fähiges Tastaturlayout verfügbar ist.

      1. Wenn das alternative ASCII-fähige Tastaturlayout ein ASCII-Zeichen nur über die unveränderte Taste erzeugt, verwenden Sie einen keyCode für das Zeichen.
      2. Wenn das alternative ASCII-fähige Tastaturlayout ein ASCII-Zeichen mit einem Shift-Tastenmodifikator erzeugt, verwenden Sie einen keyCode für das verschobene Zeichen.
      3. Andernfalls verwenden Sie einen keyCode für ein ASCII-Zeichen, das von der Taste erzeugt wird, wenn das US-Tastaturlayout aktiv ist.
    2. Andernfalls verwenden Sie einen keyCode für ein ASCII-Zeichen, das von der Taste erzeugt wird, wenn das US-Tastaturlayout aktiv ist.

  2. Wenn auf Windows ausgeführt:

    1. Verwenden Sie einen keyCode-Wert für ein ASCII-Zeichen, das von einer Taste erzeugt wird, die auf denselben virtuellen Tastencode von Windows abgebildet ist, wenn das US-Tastaturlayout aktiv ist.
keyCode-Werte des `keydown`-Ereignisses jedes Browsers, verursacht durch druckbare Tasten in Standardposition
[`KeyboardEvent.code`](/de/docs/Web/API/KeyboardEvent/code) IE 11 Google Chrome 34 Chromium 34 Safari 7 Gecko 29
Windows Windows Mac (10.9) Linux (Ubuntu 14.04) Mac (10.9) Windows Mac (10.9) Linux (Ubuntu 14.04)
US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch
"Digit1" 0x31 (49) 0x31 (49) 0x31 (49) 0x31 (49) 0x31 (49) 0x31 (49) 0x31 (49) 0x31 (49)
"Digit2" 0x32 (50) 0x32 (50) 0x32 (50) 0x32 (50) 0x32 (50) 0x32 (50) 0x32 (50) 0x32 (50)
"Digit3" 0x33 (51) 0x33 (51) 0x33 (51) 0x33 (51) 0x33 (51) 0x33 (51) 0x33 (51) 0x33 (51)
"Digit4" 0x34 (52) 0x34 (52) 0x34 (52) 0x34 (52) 0x34 (52) 0x34 (52) 0x34 (52) 0x34 (52)
"Digit5" 0x35 (53) 0x35 (53) 0x35 (53) 0x35 (53) 0x35 (53) 0x35 (53) 0x35 (53) 0x35 (53)
"Digit6" 0x36 (54) 0x36 (54) 0x36 (54) 0x36 (54) 0x36 (54) 0x36 (54) 0x36 (54) 0x36 (54)
"Digit7" 0x37 (55) 0x37 (55) 0x37 (55) 0x37 (55) 0x37 (55) 0x37 (55) 0x37 (55) 0x37 (55)
"Digit8" 0x38 (56) 0x38 (56) 0x38 (56) 0x38 (56) 0x38 (56) 0x38 (56) 0x38 (56) 0x38 (56)
"Digit9" 0x39 (57) 0x39 (57) 0x39 (57) 0x39 (57) 0x39 (57) 0x39 (57) 0x39 (57) 0x39 (57)
"Digit0" 0x30 (48) 0x30 (48) 0x30 (48) 0x30 (48) 0x30 (48) 0x30 (48) 0x30 (48) 0x30 (48)
"KeyA" 0x41 (65) 0x41 (65) 0x41 (65) 0x41 (65) 0x41 (65) 0x41 (65) 0x41 (65) 0x41 (65)
"KeyB" 0x42 (66) 0x42 (66) 0x42 (66) 0x42 (66) 0x42 (66) 0x42 (66) 0x42 (66) 0x42 (66)
"KeyC" 0x43 (67) 0x43 (67) 0x43 (67) 0x43 (67) 0x43 (67) 0x43 (67) 0x43 (67) 0x43 (67)
"KeyD" 0x44 (68) 0x44 (68) 0x44 (68) 0x44 (68) 0x44 (68) 0x44 (68) 0x44 (68) 0x44 (68)
"KeyE" 0x45 (69) 0x45 (69) 0x45 (69) 0x45 (69) 0x45 (69) 0x45 (69) 0x45 (69) 0x45 (69)
"KeyF" 0x46 (70) 0x46 (70) 0x46 (70) 0x46 (70) 0x46 (70) 0x46 (70) 0x46 (70) 0x46 (70)
"KeyG" 0x47 (71) 0x47 (71) 0x47 (71) 0x47 (71) 0x47 (71) 0x47 (71) 0x47 (71) 0x47 (71)
"KeyH" 0x48 (72) 0x48 (72) 0x48 (72) 0x48 (72) 0x48 (72) 0x48 (72) 0x48 (72) 0x48 (72)
"KeyI" 0x49 (73) 0x49 (73) 0x49 (73) 0x49 (73) 0x49 (73) 0x49 (73) 0x49 (73) 0x49 (73)
"KeyJ" 0x4A (74) 0x4A (74) 0x4A (74) 0x4A (74) 0x4A (74) 0x4A (74) 0x4A (74) 0x4A (74)
"KeyK" 0x4B (75) 0x4B (75) 0x4B (75) 0x4B (75) 0x4B (75) 0x4B (75) 0x4B (75) 0x4B (75)
"KeyL" 0x4C (76) 0x4C (76) 0x4C (76) 0x4C (76) 0x4C (76) 0x4C (76) 0x4C (76) 0x4C (76)
"KeyM" 0x4D (77) 0x4D (77) 0x4D (77) 0x4D (77) 0x4D (77) 0x4D (77) 0x4D (77) 0x4D (77)
"KeyN" 0x4E (78) 0x4E (78) 0x4E (78) 0x4E (78) 0x4E (78) 0x4E (78) 0x4E (78) 0x4E (78)
"KeyO" 0x4F (79) 0x4F (79) 0x4F (79) 0x4F (79) 0x4F (79) 0x4F (79) 0x4F (79) 0x4F (79)
"KeyP" 0x50 (80) 0x50 (80) 0x50 (80) 0x50 (80) 0x50 (80) 0x50 (80) 0x50 (80) 0x50 (80)
"KeyQ" 0x51 (81) 0x51 (81) 0x51 (81) 0x51 (81) 0xBA (186)⚠️ 0x51 (81) 0x51 (81) 0xBA (186)⚠️ 0x51 (81) 0x51 (81) 0xBA (186)⚠️ 0x51 (81) 0x51 (81) 0x51 (81) 0xBA (186)⚠️ 0x51 (81)
"KeyR" 0x52 (82) 0x52 (82) 0x52 (82) 0x52 (82) 0x52 (82) 0x52 (82) 0x52 (82) 0x52 (82)
"KeyS" 0x53 (83) 0x53 (83) 0x53 (83) 0x53 (83) 0x53 (83) 0x53 (83) 0x53 (83) 0x53 (83)
"KeyT" 0x54 (84) 0x54 (84) 0x54 (84) 0x54 (84) 0x54 (84) 0x54 (84) 0x54 (84) 0x54 (84)
"KeyU" 0x55 (85) 0x55 (85) 0x55 (85) 0x55 (85) 0x55 (85) 0x55 (85) 0x55 (85) 0x55 (85)
"KeyV" 0x56 (86) 0x56 (86) 0x56 (86) 0x56 (86) 0x56 (86) 0x56 (86) 0x56 (86) 0x56 (86)
"KeyW" 0x57 (87) 0x57 (87) 0x57 (87) 0x57 (87) 0x57 (87) 0x57 (87) 0x57 (87) 0x57 (87)
"KeyX" 0x58 (88) 0x58 (88) 0x58 (88) 0x58 (88) 0x58 (88) 0x58 (88) 0x58 (88) 0x58 (88)
"KeyY" 0x59 (89) 0x59 (89) 0x59 (89) 0x59 (89) 0x59 (89) 0x59 (89) 0x59 (89) 0x59 (89)
"KeyZ" 0x5A (90) 0x5A (90) 0x5A (90) 0x5A (90) 0x5A (90) 0x5A (90) 0x5A (90) 0x5A (90)
[`KeyboardEvent.code`](/de/docs/Web/API/KeyboardEvent/code) US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch
Windows Windows Mac (10.9) Linux (Ubuntu 14.04) Mac (10.9) Windows Mac (10.9) Linux (Ubuntu 14.04)
Internet Explorer 11 Google Chrome 34 Chromium 34 Safari 7 Gecko 29
keyCode-Werte des `keydown`-Ereignisses jedes Browsers, verursacht durch druckbare Tasten in Standardposition (Interpunktionen im US-Layout):
[`KeyboardEvent.code`](/de/docs/Web/API/KeyboardEvent/code) IE 11 Google Chrome 34 Chromium 34 Safari 7 Gecko 29
Windows Windows Mac (10.9) Linux (Ubuntu 14.04) Mac (10.9) Windows (10.9) Mac (10.9) Linux (Ubuntu 14.04)
US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch
"Comma" 0xBC (188) 0xBC (188) 0xBC (188) 0xBC (188) 0xBC (188) 0xBC (188) 0xBC (188) 0xBC (188)
"Comma" with Shift
"Period" 0xBE (190) 0xBE (190) 0xBE (190) 0xBE (190) 0xBE (190) 0xBE (190) 0xBE (190) 0xBE (190)
"Period" with Shift
"Semicolon" 0xBA (186) 0xBB (187)⚠️ 0xBA (186) 0xBA (186) 0xBB (187)⚠️ 0xBA (186) 0xBA (186) 0xBA (186) [1] 0xE5 (229)⚠️ [2] 0xBA (186) 0xBA (186) 0xE5 (229)⚠️ [3] 0xBA (186) 0xBA (186) [1] 0xE5 (229)⚠️ [2] 0x3B (59) 0x3B (59) 0x00 (0)⚠️ 0x3B (59) 0x3B (59) [1] 0x00 (0)⚠️ 0x3B (59) 0x3B (59) 0x00 (0)⚠️
"Semicolon" with Shift 0xBB (187)⚠️ [1] 0xBB (187)⚠️ 0xBB (187)⚠️ [1]
"Quote" 0xDE (222) 0xBA (186)⚠️ 0xDE (222) 0xDE (222) 0xBA (186)⚠️ 0xDE (222) 0xDE (222) 0xBA (186)⚠️ [1] 0xDE (222) 0xDE (222) 0xBA (186)⚠️ 0xDE (222) 0xDE (222) 0xBA (186)⚠️ [1] 0xDE (222) 0xDE (222) 0x3A (58)⚠️ 0xDE (222) 0xDE (222) 0x3A (58)⚠️ [1] 0xDE (222) 0xDE (222) 0x3A (58)⚠️ 0xDE (222)
"Quote" with Shift 0xDE (222)⚠️ [1] 0x38 (56)⚠️ 0xDE (222)⚠️ [1]
"BracketLeft" 0xDB (219) 0xC0(192)⚠️ 0xDB (219) 0xDB (219) 0xC0(192)⚠️ 0xDB (219) 0xDB (219) 0xDB (219) [1] 0xDB (219) 0xDB (219) 0x32 (50)⚠️ 0xDB (219) 0xDB (219) 0xDB (219) [1] 0xDB (219) 0xDB (219) 0x40 (64)⚠️ 0xDB (219) 0xDB (219) 0x40 (64)⚠️ [1] 0xDB (219) 0xDB (219) 0x40 (64)⚠️ 0xDB (219)
"BracketLeft" with Shift 0xC0 (192)⚠️ [1] 0xC0 (192)⚠️ 0xC0 (192)⚠️ [1]
"BracketRight" 0xDD (221) 0xDB (219)⚠️ 0xDD (221) 0xDD (221) 0xDB (219)⚠️ 0xDD (221) 0xDD (221) 0xDB (219)⚠️ [1] 0xDD (221) 0xDD (221) 0xDB (219)⚠️ 0xDD (221) 0xDD (221) 0xDB (219)⚠️ [1] 0xDD (221) 0xDD (221) 0xDB (219)⚠️ 0xDD (221) 0xDD (221) 0xDB (219)⚠️ [1] 0xDD (221) 0xDD (221) 0xDB (219)⚠️ 0xDD (221)
"BracketRight" with Shift
"Backquote" 0xC0 (192) ❌ N/A 0xC0 (192) 0xC0 (192) ❌ N/A 0xC0 (192) 0xC0 (192) 0xC0 (192) 0xF4 (244)⚠️ 0xC0 (192) 0xC0 (192) 0xC0 (192) ❌ N/A 0xC0 (192) 0xC0 (192) 0xC0 (192) 0x00 (0) 0xC0 (192)
"Backquote" with Shift
"Backslash" 0xDC (220) 0xDD (221)⚠️ 0xDC (220) 0xDC (220) 0xDD (221)⚠️ 0xDC (220) 0xDC (220) 0xDC (220) 0xDD (221)⚠️ 0xDC (220) 0xDC (220) 0xDC (220) 0xDD (221)⚠️ 0xDC (220) 0xDC (220) 0xDC (220) 0xDD (221)⚠️ 0xDC (220)
"Backslash" with Shift
"Minus" 0xBD (189) 0xBD (189) 0xBD (189) 0xBD (189) [1] 0xBD (189) 0xBD (189) 0xBD (189) 0xBD (189) 0xBD (189) 0xBD (189) [1] 0xBD (189) 0xAD (173) 0xAD (173) 0xAD (173) [1] 0xAD (173) 0xAD (173)
"Minus" with Shift 0xBB (187)⚠️ [1] 0xBB (187)⚠️ 0xBD (189) 0xBB (187)⚠️ [1] 0xBD (189)
"Equal" 0xBB (187) 0xDE (222)⚠️ 0xBB (187) 0xBB (187) 0xDE (222)⚠️ 0xBB (187) 0xBB (187) 0xBB (187) [1] 0xBB (187) 0xBB (187) 0x36 (54)⚠️ 0xBB (187) 0xBB (187) 0xBB (187) [1] 0xBB (187) 0x3D (61) 0xA0 (160)⚠️ 0x3D (61) 0x3D (61) 0xA0 (160)⚠️ [1] 0x3D (61) 0x3D (61) 0xA0 (160)⚠️ 0x3D (61)
"Equal" with Shift 0xC0 (192)⚠️ [1] 0xC0 (192)⚠️ 0xBB (187) 0xC0 (192)⚠️ [1] 0xBB (187)
"IntlRo" 0xC1 (193) 0xE2 (226)⚠️ 0xC1 (193) 0xC1 (193) 0xE2 (226)⚠️ 0xC1 (193) 0xBD (189) 0xBD (189) 0x00 (0)⚠️ [4] 0xDC (220)⚠️ [4] 0xBD (189) 0xBD (189) 0xE5 (229)⚠️ [5] 0x00 (0) 0xDC (220)⚠️ 0x00 (0) 0xA7 (167) 0xA7 (167) 0x00 (0) 0x00 (0) 0xDC (220)⚠️ 0x00 (0)
"IntlRo" with Shift
"IntlYen" 0xFF (255) 0xDC (220)⚠️ 0xFF (255) 0xFF (255) 0xDC (220)⚠️ 0xFF (255) 0x00 (0)⚠️ 0x00 (0)⚠️ 0x00 (0)⚠️ [4] 0xDC (220)⚠️ [4] 0x00 (0)⚠️ 0x00 (0)⚠️ 0xE5 (229)⚠️ [5] 0x00 (0)⚠️ 0xDC (220)⚠️ 0x00 (0)⚠️ 0xDC (220) 0xDC (220) 0x00 (0)⚠️ 0x00 (0)⚠️ 0xDC (220)⚠️ 0x00 (0)⚠️
"IntlYen" with Shift 0xDC (220) 0xDC (220) 0xBD (189)⚠️ 0xDC (220) 0xDC (220)
[`KeyboardEvent.code`](/de/docs/Web/API/KeyboardEvent/code) US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch US Japanisch Griechisch
Windows Windows Mac (10.9) Linux (Ubuntu 14.04) Mac (10.9) Windows Mac (10.9) Linux (Ubuntu 14.04)
Internet Explorer 11 Google Chrome 34 Chromium 34 Safari 7 Gecko 29

[1] Der Wert wird von der JIS-Tastatur eingegeben. Wenn Sie die ANSI-Tastatur verwenden, sind der Tastencode-Wert und das eingegebene Zeichen das, was Sie aus dem US-Tastaturlayout auswählen.

[2] Die Taste ist eine tote Taste. Der Wert des keyup-Ereignisses ist 0xBA (186).

[3] Die Taste ist eine tote Taste. Der Wert des keyup-Ereignisses ist 0x10 (16).

[4] Es werden keine Tastenereignisse ausgegeben.

[5] Die Taste ist mit dem griechischen Tastaturlayout nicht verfügbar (gibt keine Zeichen ein). Der Wert des keyup-Ereignisses ist 0x00 (0).

Nicht druckbare Tasten (Funktionstasten)

keyCode-Werte des `keydown`-Ereignisses jedes Browsers, verursacht durch Modifikatortasten:
[`KeyboardEvent.code`](/de/docs/Web/API/KeyboardEvent/code) IE 11 Google Chrome 34 Chromium 34 Konstanten für keyCode-Wert

Gecko definiert viele keyCode-Werte in KeyboardEvent, um die Zuordnungstabelle explizit zu machen. Diese Werte sind nützlich für Add-on-Entwickler von Firefox, aber nicht so nützlich in öffentlichen Webseiten.

Konstante Wert Beschreibung
DOM_VK_CANCEL 0x03 (3) Abbrechen-Taste.
DOM_VK_HELP 0x06 (6) Hilfetaste.
DOM_VK_BACK_SPACE 0x08 (8) Rücktaste.
DOM_VK_TAB 0x09 (9) Tabulatortaste.
DOM_VK_CLEAR 0x0C (12) "5"-Taste auf dem Ziffernblock, wenn NumLock nicht aktiviert ist. Oder auf Mac, Löschtaste, die sich bei der NumLock-Taste befindet.
DOM_VK_RETURN 0x0D (13) Eingabe-/Entertaste auf der Haupttastatur.
DOM_VK_ENTER 0x0E (14) Reserviert, aber nicht verwendet. Veraltet (Entfernt, siehe Firefox-Bug 969247.)
DOM_VK_SHIFT 0x10 (16) Umschalt-Taste.
DOM_VK_CONTROL 0x11 (17) Steuerungstaste.
DOM_VK_ALT 0x12 (18) Alt (Option auf Mac)-Taste.
DOM_VK_PAUSE 0x13 (19) Pause-Taste.
DOM_VK_CAPS_LOCK 0x14 (20) Feststelltaste.
DOM_VK_KANA 0x15 (21) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_HANGUL 0x15 (21) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_EISU 0x 16 (22) "英数"-Taste auf japanischen Mac-Tastaturen.
DOM_VK_JUNJA 0x17 (23) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_FINAL 0x18 (24) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_HANJA 0x19 (25) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_KANJI 0x19 (25) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_ESCAPE 0x1B (27) Escapetaste.
DOM_VK_CONVERT 0x1C (28) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_NONCONVERT 0x1D (29) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_ACCEPT 0x1E (30) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_MODECHANGE 0x1F (31) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_SPACE 0x20 (32) Leertaste.
DOM_VK_PAGE_UP 0x21 (33) Bild-auf-Taste.
DOM_VK_PAGE_DOWN 0x22 (34) Bild-ab-Taste.
DOM_VK_END 0x23 (35) Ende-Taste.
DOM_VK_HOME 0x24 (36) Pos1-Taste.
DOM_VK_LEFT 0x25 (37) Pfeil-nach-links-Taste.
DOM_VK_UP 0x26 (38) Pfeil-nach-oben-Taste.
DOM_VK_RIGHT 0x27 (39) Pfeil-nach-rechts-Taste.
DOM_VK_DOWN 0x28 (40) Pfeil-nach-unten-Taste.
DOM_VK_SELECT 0x29 (41) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_PRINT 0x2A (42) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_EXECUTE 0x2B (43) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_PRINTSCREEN 0x2C (44) Drucktaste.
DOM_VK_INSERT 0x2D (45) Einfügen-Taste.
DOM_VK_DELETE 0x2E (46) Löschen-Taste.
DOM_VK_0 0x30 (48) "0"-Taste an Standardposition.
DOM_VK_1 0x31 (49) "1"-Taste an Standardposition.
DOM_VK_2 0x32 (50) "2"-Taste an Standardposition.
DOM_VK_3 0x33 (51) "3"-Taste an Standardposition.
DOM_VK_4 0x34 (52) "4"-Taste an Standardposition.
DOM_VK_5 0x35 (53) "5"-Taste an Standardposition.
DOM_VK_6 0x36 (54) "6"-Taste an Standardposition.
DOM_VK_7 0x37 (55) "7"-Taste an Standardposition.
DOM_VK_8 0x38 (56) "8"-Taste an Standardposition.
DOM_VK_9 0x39 (57) "9"-Taste an Standardposition.
DOM_VK_COLON 0x3A (58) Doppelpunkt (":")-Taste.
DOM_VK_SEMICOLON 0x3B (59) Semikolon (";")-Taste.
DOM_VK_LESS_THAN 0x3C (60) Kleiner-als ("<")-Taste.
DOM_VK_EQUALS 0x3D (61) Gleichheitszeichen ("=")-Taste.
DOM_VK_GREATER_THAN 0x3E (62) Größer-als (">")-Taste.
DOM_VK_QUESTION_MARK 0x3F (63) Fragezeichen ("?")-Taste.
DOM_VK_AT 0x40 (64) At-Zeichen ("@")-Taste.
DOM_VK_A 0x41 (65) "A"-Taste.
DOM_VK_B 0x42 (66) "B"-Taste.
DOM_VK_C 0x43 (67) "C"-Taste.
DOM_VK_D 0x44 (68) "D"-Taste.
DOM_VK_E 0x45 (69) "E"-Taste.
DOM_VK_F 0x46 (70) "F"-Taste.
DOM_VK_G 0x47 (71) "G"-Taste.
DOM_VK_H 0x48 (72) "H"-Taste.
DOM_VK_I 0x49 (73) "I"-Taste.
DOM_VK_J 0x4A (74) "J"-Taste.
DOM_VK_K 0x4B (75) "K"-Taste.
DOM_VK_L 0x4C (76) "L"-Taste.
DOM_VK_M 0x4D (77) "M"-Taste.
DOM_VK_N 0x4E (78) "N"-Taste.
DOM_VK_O 0x4F (79) "O"-Taste.
DOM_VK_P 0x50 (80) "P"-Taste.
DOM_VK_Q 0x51 (81) "Q"-Taste.
DOM_VK_R 0x52 (82) "R"-Taste.
DOM_VK_S 0x53 (83) "S"-Taste.
DOM_VK_T 0x54 (84) "T"-Taste.
DOM_VK_U 0x55 (85) "U"-Taste.
DOM_VK_V 0x56 (86) "V"-Taste.
DOM_VK_W 0x57 (87) "W"-Taste.
DOM_VK_X 0x58 (88) "X"-Taste.
DOM_VK_Y 0x59 (89) "Y"-Taste.
DOM_VK_Z 0x5A (90) "Z"-Taste.
DOM_VK_WIN 0x5B (91) Windows-Logo-Taste auf Windows. Oder Super- oder Hyper-Taste auf Linux.
DOM_VK_CONTEXT_MENU 0x5D (93) Kontextmenü-Taste.
DOM_VK_SLEEP 0x5F (95) Unterstützung für diesen Tastencode wurde in Gecko 4.0 für Linux hinzugefügt.
DOM_VK_NUMPAD0 0x60 (96) "0" auf dem Ziffernblock.
DOM_VK_NUMPAD1 0x61 (97) "1" auf dem Ziffernblock.
DOM_VK_NUMPAD2 0x62 (98) "2" auf dem Ziffernblock.
DOM_VK_NUMPAD3 0x63 (99) "3" auf dem Ziffernblock.
DOM_VK_NUMPAD4 0x64 (100) "4" auf dem Ziffernblock.
DOM_VK_NUMPAD5 0x65 (101) "5" auf dem Ziffernblock.
DOM_VK_NUMPAD6 0x66 (102) "6" auf dem Ziffernblock.
DOM_VK_NUMPAD7 0x67 (103) "7" auf dem Ziffernblock.
DOM_VK_NUMPAD8 0x68 (104) "8" auf dem Ziffernblock.
DOM_VK_NUMPAD9 0x69 (105) "9" auf dem Ziffernblock.
DOM_VK_MULTIPLY 0x6A (106) "*" auf dem Ziffernblock.
DOM_VK_ADD 0x6B (107) "+" auf dem Ziffernblock.
DOM_VK_SEPARATOR 0x6C (108)
DOM_VK_SUBTRACT 0x6D (109) "-" auf dem Ziffernblock.
DOM_VK_DECIMAL 0x6E (110) Dezimalpunkt auf dem Ziffernblock.
DOM_VK_DIVIDE 0x6F (111) "/" auf dem Ziffernblock.
DOM_VK_F1 0x70 (112) F1-Taste.
DOM_VK_F2 0x71 (113) F2-Taste.
DOM_VK_F3 0x72 (114) F3-Taste.
DOM_VK_F4 0x73 (115) F4-Taste.
DOM_VK_F5 0x74 (116) F5-Taste.
DOM_VK_F6 0x75 (117) F6-Taste.
DOM_VK_F7 0x76 (118) F7-Taste.
DOM_VK_F8 0x77 (119) F8-Taste.
DOM_VK_F9 0x78 (120) F9-Taste.
DOM_VK_F10 0x79 (121) F10-Taste.
DOM_VK_F11 0x7A (122) F11-Taste.
DOM_VK_F12 0x7B (123) F12-Taste.
DOM_VK_F13 0x7C (124) F13-Taste.
DOM_VK_F14 0x7D (125) F14-Taste.
DOM_VK_F15 0x7E (126) F15-Taste.
DOM_VK_F16 0x7F (127) F16-Taste.
DOM_VK_F17 0x80 (128) F17-Taste.
DOM_VK_F18 0x81 (129) F18-Taste.
DOM_VK_F19 0x82 (130) F19-Taste.
DOM_VK_F20 0x83 (131) F20-Taste.
DOM_VK_F21 0x84 (132) F21-Taste.
DOM_VK_F22 0x85 (133) F22-Taste.
DOM_VK_F23 0x86 (134) F23-Taste.
DOM_VK_F24 0x87 (135) F24-Taste.
DOM_VK_NUM_LOCK 0x90 (144) NumLock-Taste.
DOM_VK_SCROLL_LOCK 0x91 (145) Scroll-Lock-Taste.
DOM_VK_WIN_OEM_FJ_JISHO 0x92 (146) Eine OEM-spezifische Taste auf Windows. Diese wurde für die "Wörterbuch"-Taste auf Fujitsu OASYS verwendet.
DOM_VK_WIN_OEM_FJ_MASSHOU 0x93 (147) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Taste "Wort deregistrieren" auf Fujitsu OASYS verwendet.
DOM_VK_WIN_OEM_FJ_TOUROKU 0x94 (148) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Taste "Wort registrieren" auf Fujitsu OASYS verwendet.
DOM_VK_WIN_OEM_FJ_LOYA 0x95 (149) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Taste "Linkes OYAYUBI" auf Fujitsu OASYS verwendet.
DOM_VK_WIN_OEM_FJ_ROYA 0x96 (150) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Taste "Rechtes OYAYUBI" auf Fujitsu OASYS verwendet.
DOM_VK_CIRCUMFLEX 0xA0 (160) Zirkumflex ("^")-Taste.
DOM_VK_EXCLAMATION 0xA1 (161) Ausrufezeichen ("!")-Taste.
DOM_VK_DOUBLE_QUOTE 0xA2 (162) Anführungszeichen (""")-Taste.
DOM_VK_HASH 0xA3 (163) Raute ("#")-Taste.
DOM_VK_DOLLAR 0xA4 (164) Dollarzeichen ("$")-Taste.
DOM_VK_PERCENT 0xA5 (165) Prozentzeichen ("%")-Taste.
DOM_VK_AMPERSAND 0xA6 (166) Et-Zeichen ("&")-Taste.
DOM_VK_UNDERSCORE 0xA7 (167) Unterstrich ("_")-Taste.
DOM_VK_OPEN_PAREN 0xA8 (168) Geöffnete Klammer ("(")-Taste.
DOM_VK_CLOSE_PAREN 0xA9 (169) Geschlossene Klammer (")")-Taste.
DOM_VK_ASTERISK 0xAA (170) Sternchen ("*")-Taste.
DOM_VK_PLUS 0xAB (171) Plus ("+")-Taste.
DOM_VK_PIPE 0xAC (172) Pipe ("|")-Taste.
DOM_VK_HYPHEN_MINUS 0xAD (173) Bindestrich ("-")-Taste.
DOM_VK_OPEN_CURLY_BRACKET 0xAE (174) Geöffnete geschweifte Klammer ("{")-Taste.
DOM_VK_CLOSE_CURLY_BRACKET 0xAF (175) Geschlossene geschweifte Klammer ("}")-Taste.
DOM_VK_TILDE 0xB0 (176) Tilde ("~")-Taste.
DOM_VK_VOLUME_MUTE 0xB5 (181) Audio-Stummschalttaste.
DOM_VK_VOLUME_DOWN 0xB6 (182) Audio-Lautstärke-leiser-Taste
DOM_VK_VOLUME_UP 0xB7 (183) Audio-Lautstärke-lauter-Taste
DOM_VK_COMMA 0xBC (188) Komma (",")-Taste.
DOM_VK_PERIOD 0xBE (190) Punkt (".")-Taste.
DOM_VK_SLASH 0xBF (191) Schrägstrich ("/")-Taste.
DOM_VK_BACK_QUOTE 0xC0 (192) Backtick ("`")-Taste.
DOM_VK_OPEN_BRACKET 0xDB (219) Geöffnete eckige Klammer ("[")-Taste.
DOM_VK_BACK_SLASH 0xDC (220) Backslash ("\")-Taste.
DOM_VK_CLOSE_BRACKET 0xDD (221) Geschlossene eckige Klammer ("]")-Taste.
DOM_VK_QUOTE 0xDE (222) Hochkomma (''')-Taste.
DOM_VK_META 0xE0 (224) Meta-Taste auf Linux, Befehlstaste auf Mac.
DOM_VK_ALTGR 0xE1 (225) AltGr-Taste (Level-3-Umschalttaste oder Level-5-Umschalttaste) auf Linux.
DOM_VK_WIN_ICO_HELP 0xE3 (227) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Olivetti ICO-Tastatur verwendet.
DOM_VK_WIN_ICO_00 0xE4 (228) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Olivetti ICO-Tastatur verwendet.
DOM_VK_WIN_ICO_CLEAR 0xE6 (230) Eine OEM-spezifische Taste auf Windows. Diese wurde für die Olivetti ICO-Tastatur verwendet.
DOM_VK_WIN_OEM_RESET 0xE9 (233) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_JUMP 0xEA (234) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_PA1 0xEB (235) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_PA2 0xEC (236) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_PA3 0xED (237) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_WSCTRL 0xEE (238) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_CUSEL 0xEF (239) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_ATTN 0xF0 (240) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_FINISH 0xF1 (241) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_COPY 0xF2 (242) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_AUTO 0xF3 (243) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_ENLW 0xF4 (244) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_WIN_OEM_BACKTAB 0xF5 (245) Eine OEM-spezifische Taste auf Windows. Diese wurde für Geräte von Nokia/Ericsson verwendet.
DOM_VK_ATTN 0xF6 (246) Attn (Aufmerksamkeit)-Taste von IBM-Mittelrechnern, z.B. AS/400.
DOM_VK_CRSEL 0xF7 (247) CrSel (Cursor-Auswahl)-Taste des IBM-3270-Tastaturlayouts.
DOM_VK_EXSEL 0xF8 (248) ExSel (Erweitern der Auswahl)-Taste des IBM-3270-Tastaturlayouts.
DOM_VK_EREOF 0xF9 (249) Löschen-EOF-Taste des IBM-3270-Tastaturlayouts.
DOM_VK_PLAY 0xFA (250) Wiedergabe-Taste des IBM-3270-Tastaturlayouts.
DOM_VK_ZOOM 0xFB (251) Zoom-Taste.
DOM_VK_PA1 0xFD (253) PA1-Taste des IBM-3270-Tastaturlayouts.
DOM_VK_WIN_OEM_CLEAR 0xFE (254) Löschtaste, aber wir sind uns über den Bedeutungsunterschied zu DOM_VK_CLEAR nicht sicher.

Beispiele

js
window.addEventListener("keydown", (event) => {
  if (event.defaultPrevented) {
    return; // Should do nothing if the default action has been cancelled
  }

  let handled = false;
  if (event.key !== undefined) {
    // Handle the event with KeyboardEvent.key
    handled = true;
  } else if (event.keyCode !== undefined) {
    // Handle the event with KeyboardEvent.keyCode
    handled = true;
  }

  if (handled) {
    // Suppress "double action" if event handled
    event.preventDefault();
  }
});

Spezifikationen

If you're able to see this, something went wrong on this page.

Browser-Kompatibilität

If you're able to see this, something went wrong on this page.

OEM-spezifische Tasten auf Windows

Unter Windows sind einige Werte des virtuellen Tastencodes für OEM-spezifische Tasten definiert (reserviert). Sie sind für spezielle Tasten auf nicht standardmäßigen Tastaturen verfügbar. In anderen Worten, einige Werte werden von zwei oder mehr Anbietern (oder Hardware) für unterschiedliche Bedeutungen verwendet.

Ab Gecko 21 (und älter als 15) sind OEM-spezifische Tastenwerte nur unter Windows im keyCode-Attribut verfügbar. Daher sind sie nicht nützlich für übliche Webanwendungen. Sie sind nur für Intranetanwendungen oder in ähnlichen Situationen nützlich.

Siehe "Herstellerspezifische virtuelle Tasten-Codes (Windows CE 5.0)" in MSDN für weitere Details.