Contenido

Controla el teclado con Javascript

27 Oct

+ 8

En OpenJS publican un interesante script para facilitarnos una forma de controlar el teclado desde Javascript. Debido a la facilidad con la que ha sido desarrollado permite realizar combinaciones de teclas de una forma fácil y sobretodo fácil de comprender al mirar el código.

shortcut.add("Ctrl+Shift+X",function() {
 alert("Hi there!");
});

Instalación

Al igual que cualquier script de Javascript la instalación comienza por la inclusión del fichero JS que contiene la lógica del script.

<script src="shortcut.js" type="text/javascript"></script>

Una vez incluido a nuestro proyecto, ya podemos indicar nuestras combinaciones de teclas.

shortcut.add()

Añadir una combinación de teclas es sencillo como podemos ver en el siguiente código:

shortcut.add("Ctrl+B",function() {
	alert("The bookmarks of your browser will show up after this alert...");
},{
	'type':'keydown',
	'propagate':true,
	'target':document
});

Opciones disponibles:

  • type: Podemos indicar el tipo de evento que queremos controlar para esa combinación. [keydown, keyup, keypress] (Por defecto keydown)
  • disable_in_input: (Boolean) que nos activa o desactiva la combinación para elementos de introducción de texto (input, textarea,…)
  • target:  Elemento que será visible desde la ejecución del evento. (Por defecto document)
  • propagate: ¿Se ha de propagar el evento? (Por defecto false)
  • keycode:  Indicamos que usamos el formato keyCode.

shortcut.remove()

Eliminar una combinación de teclas nos permite desactivar una combinación anterior.

shortcut.add("Ctrl+B",function() {
 alert("Bold");
});
//Remove the shortcut
shortcut.remove("Ctrl+B");

Descargar y Demo

Puedes ver una demo y descargar directamente desde aquí.

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.