Was sind die JavaScript-Schlüsselcodes? [geschlossen]

82

Welche Schlüsselcodes sind für JavaScript verfügbar? Wenn sie nicht für alle Browser gleich sind, listen Sie bitte die Schlüsselcodes für jeden Browser auf.

Webdesigner
quelle
Also komplett wollen Sie den gesamten Unicode-Bereich? Sie sollten angeben, was Sie unter "vollständig" verstehen.
Jakub Hampl
Mit vollständig meine ich, alle Schlüsselcode-Nummern zu enthalten. Die Beispiele, die ich gegeben habe, geben die Zahlen 8,9,13,16,17 ... und überspringen so einige Zahlen.
Web_Designer
3
Ich glaube, dass es eine zählbare Anzahl von Zeichen gibt, denen JavaScript-Schlüsselcodes zugewiesen sind.
Web_Designer
7
Warum erstellen Sie eine solche Tabelle nicht selbst mit JavaScript?
Pimvdb
1
@pimvdb Hat deinen Rat befolgt! stackoverflow.com/a/14905611/552067
Web_Designer

Antworten:

58

keyCodes unterscheiden sich von den ASCII-Werten. Eine vollständige keyCode-Referenz finden Sie unter http://unixpapa.com/js/key.html

Beispielsweise haben Numpad-Nummern die Schlüsselcodes 96 - 105, was dem Beginn des Kleinbuchstabenalphabets in ASCII entspricht. Dies kann zu Problemen bei der Validierung der numerischen Eingabe führen.

user736373
quelle
2
Die verlinkte Seite enthält keine vollständige Referenz. Es wird angemessen erklärt, dass die Schlüsselcodes von der Tastatur abhängen und die Bedeutung von Schlüsselcodes oder Schlüsselcodekombinationen von der Software abhängt, die sie interpretiert. Es kann also keine vollständige Liste geben.
Jukka K. Korpela
9
http://www.javascriptkeycode.com hat einen praktischen Schlüsselcode-Generator, mit dem ich kürzlich verschiedene Tastaturkombinationen getestet habe.
Raz Wilson
30

Gefolgt @ pimvdb Rat , und meine eigenen erstellt:

http://daniel-hug.github.io/characters/

Seien Sie geduldig, da es einige Sekunden dauert, ein Element für jedes der 65536 Zeichen mit einem JavaScript-Schlüsselcode zu generieren.

Webdesigner
quelle
13
Schreckliche Seite, lässt meinen Browser jedes Mal abstürzen. Verwenden Sie dies nicht!
Florian Leitgeb
@Floeee Sorry, es wird derzeit eine Tabellenzeile für alle 65536 Zeichen generiert, die einen Javascript-Schlüsselcode haben. Dies geschieht sehr effizient, dauert aber immer noch 10 bis 20 Sekunden. Ich könnte es so ändern, dass es 1000 lädt, nur um zu beginnen, dann mehr auf Anfrage. Antwort bearbeitet, um dies zu erklären.
Web_Designer
Warum wird am Anfang der Seite keine einfache Textnachricht angezeigt, die dies erklärt?
Jared
4
Es kann genauer sein zu sagen: "Es dauert 10 bis 20 Sekunden, bis Ihr Browser irreversibel abstürzt, bis Sie den Vorgang beenden."
Dissident Rage
3
Dies sind charCodes, keine keyCodes. keyCodes sind unter 3.3 Abschnitt von unixpapa.com/js/key.html
Semra
18

Ich brauchte so etwas für die Benutzeroberfläche der Steuerungskonfiguration eines Spiels, also habe ich eine Liste für die Standard-Tastaturcodes für das US-Tastaturlayout zusammengestellt und sie ihren jeweiligen Schlüsselnamen zugeordnet.

Hier ist eine Geige, die eine Karte für Code enthält -> Name und umgekehrt: http://jsfiddle.net/vWx8V/

Wenn Sie andere wichtige Layouts unterstützen möchten, müssen Sie diese Karten ändern, um sie separat zu berücksichtigen.

Dies gilt nur, wenn Sie nach einer Liste von Schlüsselcode-Werten gesucht haben, die Steuerzeichen und andere Sonderwerte enthalten, die nicht (oder selten) über eine Tastatur eingegeben werden können und möglicherweise außerhalb des Bereichs der keydown/ keypress/ keyupEreignisse von Javascript liegen. Viele von ihnen sind Steuerzeichen oder Sonderzeichen wie null( \0) und werden höchstwahrscheinlich nicht benötigt.

Beachten Sie, dass die Anzahl der Tasten auf einer vollständigen Tastatur geringer ist als viele der Keycode-Werte.

Flink
quelle
Noch ein Dankeschön. Diese bereits in Objekten zu haben, ist eine schöne Zeitersparnis.
Charlie Roberts
Wenn ich auf meinem Mac die rechte + cmd-Taste drücke, wird Rechtsklick zurückgegeben.
August
8

http://keycodes.atjayjo.com/

Diese App ist einfach fantastisch. Es handelt sich im Wesentlichen um eine virtuelle Tastatur, die Ihnen sofort den auf einer Standard-US-Tastatur gedrückten Tastencode anzeigt.

jiminikiz
quelle
4
Trotz der Bemühungen des OP, weiterzuverfolgen. Das ist einfach großartig!
Sealocal
1

Eine mögliche Antwort wird gegeben, wenn Sie dieses Snippet ausführen.

document.write('<table>')
for (var i = 0; i < 250; i++) {
  document.write('<tr><td>' + i + '</td><td>' + String.fromCharCode(i) + '</td></tr>')
}
document.write('</table>')
td {
  border: solid 1px;
  padding: 1px 12px;
  text-align: right;
}
table {
  border-collapse: collapse;
}
* {
  font-family: monospace;
  font-size: 1.1em;
}

Fiatjaf
quelle
1
Dies sind keine Schlüsselcodes, sondern Zeichencodes. Das ist anders
Lukas Eder