¿Qué son los códigos clave de JavaScript? [cerrado]


82

¿Qué códigos clave están disponibles para JavaScript? Si no son iguales para todos los navegadores, enumere los códigos clave para cada navegador.


Entonces, para completar, ¿quieres toda la gama Unicode? Debe especificar qué quiere decir con "completo".
Jakub Hampl

Por completo me refiero a que contiene todos los números de código clave. Los ejemplos que di dan los números 8,9,13,16,17 ... Así saltando algunos números.
Web_Designer

3
Creo que hay un número contable de caracteres para los que se asignan códigos de teclas JavaScript.
Web_Designer

7
¿Por qué no crea usted mismo una tabla con JavaScript?
pimvdb

1
@pimvdb ¡Seguí tu consejo! stackoverflow.com/a/14905611/552067
Web_Designer

Respuestas:


58

Los keyCodes son diferentes de los valores ASCII. Para obtener una referencia completa de keyCode, consulte http://unixpapa.com/js/key.html

Por ejemplo, los números del teclado numérico tienen los códigos de teclas 96 a 105, que corresponden al comienzo del alfabeto en minúsculas en ASCII. Esto podría generar problemas en la validación de la entrada numérica.


2
La página vinculada no contiene una referencia completa. Explica adecuadamente que los códigos de tecla dependen del teclado y los significados de los códigos de tecla o combinaciones de códigos de tecla dependen del software que los interpreta. Entonces no puede haber una lista completa.
Jukka K. Korpela

9
http://www.javascriptkeycode.com tiene un útil generador de códigos de teclas que he usado recientemente para probar diferentes combinaciones de teclado.
Raz Wilson

30

Seguí el consejo de @ pimvdb y creé el mío:

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

Tenga paciencia, ya que se necesitan unos segundos para generar un elemento para cada uno de los 65536 caracteres que tienen un código clave JavaScript.


13
Sitio horrible, deja que mi navegador se bloquee cada vez. ¡No uses esto!
Florian Leitgeb

@Floeee Lo sentimos, actualmente genera una fila de tabla para los 65536 caracteres que tienen un código clave javascript. Lo hace de manera muy eficiente, pero aún toma de 10 a 20 segundos. Podría cambiarlo para que cargue 1000 solo para comenzar, luego más a pedido. Respuesta editada para explicar esto.
Web_Designer

¿Por qué no muestra un mensaje de texto simple al principio de la página explicando esto?
Jared

4
Puede ser más exacto decir "se tarda entre 10 y 20 segundos en bloquear su navegador de forma irreversible hasta que finalice el proceso".
Dissident Rage

3
Estos son charCodes, no keyCodes. Los códigos clave se enumeran en la sección 3.3 de unixpapa.com/js/key.html
Semra

18

Necesitaba algo como esto para la interfaz de usuario de configuración de control de un juego, así que compilé una lista para los códigos de teclas de distribución de teclado estándar de EE. UU. Y los asigné a sus respectivos nombres de teclas.

Aquí hay un violín que contiene un mapa para el código -> nombre y viceversa: http://jsfiddle.net/vWx8V/

Si desea admitir otros diseños de teclas, deberá modificar estos mapas para adaptarse a ellos por separado.

Eso es, a menos que esté buscando una lista de valores de código clave que incluyan los caracteres de control y otros valores especiales que no son (o rara vez) se pueden ingresar usando un teclado y pueden estar fuera del alcance de los eventos keydown/ keypress/ keyupde Javascript. Muchos de ellos son caracteres de control o caracteres especiales como null( \0) y lo más probable es que no los necesite.

Tenga en cuenta que el número de teclas en un teclado completo es menor que muchos de los valores del código de tecla.


una nota más de agradecimiento. tenerlos ya en los objetos es un buen ahorro de tiempo.
charlie roberts

Cuando presiono el botón derecho + cmd en mi mac, devuelve ¿Clic derecho?
agosto

8

http://keycodes.atjayjo.com/

Esta aplicación es simplemente increíble. Es esencialmente un teclado virtual que muestra inmediatamente el código de tecla presionado en un teclado estándar de EE. UU.


4
A pesar del esfuerzo del OP por dar seguimiento. ¡Esto es simplemente increíble!
sealocal



1

Se dará una posible respuesta cuando ejecute este fragmento.

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;
}


1
Estos no son códigos clave, son códigos de caracteres. Eso es diferente
Lukas Eder
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.