2011-07-24 27 views

Respuesta

79

intente buscar en el objeto de evento.

p. Ej.

document.body.onclick = function (e) { 
    if (e.ctrlKey) { 
     alert("ctr key was pressed during the click"); 
    } 
} 
+8

+1 para la única respuesta con código real en lugar de simplemente "mira aquí". –

+1

FYI cuando se utiliza esto en un mac con "ctrl-click = right click" todavía se obtiene el comportamiento de apertura del menú del navegador. –

+0

Si necesita detectar el comando de Mac OS X clave comprobar el '' 'propiedad metaKey''' del objeto de evento' '' e.metaKey''' – romek

2

la salida ctrlKey la propiedad del evento

3

utilizo esto y funciona bien

<a href="" onclick="return Details(event)" ></a> 

function Details(event) { 
      if (event.ctrlKey) { 
       alert('Ctrl down'); 
      } 
} 
1

lo hice usando cntrlIsPressed indicador global; también se ocupa de seleccionar todas las opciones usando Control + A

// Check whether control button is pressed 
$(document).keydown(function(event) { 
    if (event.which == "17") 
     cntrlIsPressed = true; 
    else if (event.which == 65 && cntrlIsPressed) { 
     // Cntrl+ A 
     selectAllRows(); 
    } 
}); 

$(document).keyup(function() { 
    cntrlIsPressed = false; 
}); 

var cntrlIsPressed = false; 
+1

Esta es una buena solución para aquellos que quieren comprobar si es CTRL fuera de un controlador de eventos clave. –

Cuestiones relacionadas