Quiero tomar la entrada del teclado en JavaScript, donde las teclas de flecha, cuando se presiona, dará como resultado el cambio de forma de una forma en particular. ¿Cómo tomo la entrada de alguna de las claves en JavaScript?¿Cómo tomar la entrada del teclado en JavaScript?
Respuesta
Puede hacerlo por registering an event handler en el documento o en cualquier elemento que desee observar y explorar el key related properties of the event object.
Ejemplo que funciona en los navegadores FF y basado en WebKit:
document.addEventListener('keydown', function(event) {
if(event.keyCode == 37) {
alert('Left was pressed');
}
else if(event.keyCode == 39) {
alert('Right was pressed');
}
});
El IE equivalente sería una buena cosa para agregar. –
¿Hay algo que pueda hacer para capturar el retroceso pero evitar que el navegador "retroceda"? –
@Vitimtk: Lo siento, realmente no tengo tiempo ahora, pero eche un vistazo a estas preguntas: http://stackoverflow.com/search?q=javascript+disable+backspace+navigation –
Si usted está haciendo esto en un navegador, puede capturar los eventos de teclado.
- keydown
- pulsación de tecla
- keyup
todos podemos ser escuchados en los nodos HTML en la mayoría de los navegadores.
Webkit también soporta ...
- textInput
Ver para más detalles .. http://unixpapa.com/js/key.html
Debe registrar un controlador de eventos en la ventana o cualquier elemento que desea Observe las pulsaciones de teclas y utilice el estándar key values en lugar de keyCode. Este código modificado de MDN responderá a keyDown cuando la izquierda, derecha, arriba o abajo se presionan las teclas de flecha:
window.addEventListener("keydown", function (event) {
if (event.defaultPrevented) {
return; // Do nothing if the event was already processed
}
switch (event.key) {
case "ArrowDown":
// code for "down arrow" key press.
break;
case "ArrowUp":
// code for "up arrow" key press.
break;
case "ArrowLeft":
// code for "left arrow" key press.
break;
case "ArrowRight":
// code for "right arrow" key press.
break;
default:
return; // Quit when this doesn't handle the key event.
}
// Cancel the default action to avoid it being handled twice
event.preventDefault();
}, true);
// the last option dispatches the event to the listener first,
// then dispatches event to window
- 1. ¿Cómo simular la entrada del teclado en TODAS las aplicaciones?
- 2. Manejo efectivo de la entrada del teclado
- 3. jQuery: ¿Cómo puedo escuchar la entrada general del teclado?
- 4. Control deslizante jQuery-UI: cómo desactivar la entrada del teclado?
- 5. Android: Detectar inactividad del usuario/Detectar (teclado) entrada de teclado
- 6. Inhabilitar la entrada del teclado en Android TimePicker
- 7. CGEventTapCreate está viendo la entrada del teclado en Cocoa
- 8. ¿Cómo tomar la entrada en una matriz + PYTHON?
- 9. cambiar el diseño del teclado con javascript
- 10. Java recibiendo entrada del teclado MIDI
- 11. ¿Puedo cambiar la entrada del teclado de un usuario?
- 12. ¿Cómo obtengo la entrada de la consola en javascript?
- 13. restringir la entrada del usuario usando javascript
- 14. ¿Por qué mi control no acepta la entrada del teclado?
- 15. Cómo tomar espacios en blanco en Entrada en C
- 16. ¿Cómo puedo evitar la autocompletación del teclado en MobileSafari/UIWebView?
- 17. Ocultar el teclado del iPhone usando Javascript
- 18. Entrada de teclado/mouse en C++
- 19. detectar el diseño del teclado con javascript
- 20. Tomar ruta desde la raíz de la aplicación en javascript
- 21. ¿Cómo puedo bloquear la entrada del teclado y el mouse en C#?
- 22. caso de prueba para la función de impulso de tomar la entrada del usuario
- 23. AS3: ¿Cómo obtener la pantalla completa y la entrada del teclado?
- 24. Mostrando el teclado del iPhone en diferentes idiomas según la entrada del usuario
- 25. ¿Detecta la ocultación del teclado del iPad frente a la conexión del teclado externo?
- 26. Android Emulator: entrada de teclado suave y entrada de teclado duro
- 27. Uso de BufferedReader para tomar entrada en java
- 28. MvcMailer: Tomar la entrada del usuario a la vista a través del modelo y luego insertarlo en el correo
- 29. La forma F # muy simple se bloquea en la entrada del teclado
- 30. ¿Cómo leo la entrada de un solo carácter del teclado usando nasm (assembly) debajo de ubuntu?
¿Es que esto se haga en un navegador? Si es así puedes capturar eventos de teclado. – ocodo
sí en un navegador – Hick