saber que metodo hizo evento elemento ejemplos disparar dio capturar jquery events keyboard click

metodo - ¿Cómo puedo verificar si se presiona una tecla durante el evento click con jQuery?



saber en que elemento se hizo click jquery (3)

Me gustaría detectar un evento de clic con jQuery y ser capaz de decir si se presionó una tecla al mismo tiempo, así puedo pasar a la función de devolución de llamada en función del evento de pulsación de tecla.

Por ejemplo:

$("button").click(function() { if([KEYPRESSED WHILE CLICKED]) { // Do something... } else { // Do something different... } });

¿Es esto posible o cómo se puede hacer si es posible?


Necesita rastrear por separado el estado de la clave usando keydown() y keyup() :

var ctrlPressed = false; $(window).keydown(function(evt) { if (evt.which == 17) { // ctrl ctrlPressed = true; } }).keyup(function(evt) { if (evt.which == 17) { // ctrl ctrlPressed = false; } });

Vea la lista de códigos clave . Ahora puedes verificar que:

$("button").click(function() { if (ctrlPressed) { // do something } else { // do something else } });


Pude usarlo solo con JavaScript

<a href="" onclick="return Show(event)"></a> function Show(event) { if (event.ctrlKey) { alert(''Ctrl down''); } }


Puede detectar fácilmente las teclas Shift, Alt y Control desde las propiedades del evento;

$("button").click(function(evt) { if (evt.ctrlKey) alert(''Ctrl down''); if (evt.altKey) alert(''Alt down''); // ... });

Ver el modo quirksmode para más propiedades. Si quiere detectar otras llaves, vea la respuesta de Cletus .