How can I check if a key is pressed during the click event with jQuery?

click, events, jquery, keyboard

Solution

You can easily detect the shift, alt and control keys from the event properties;

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

See quirksmode for more properties. If you want to detect other keys, see cletus's answer.

Problem

I would like to catch a click event with jQuery and be able to tell if a key was pressed at the same time so I can fork within the callback function based on the keypress event. For example: ``` $("button").click(function() { if([KEYPRESSED WHILE CLICKED]) { // Do something... } else { // Do something different... } }); ``` Is this possible at all or how can it be done if it is possible?

Original source