Using one of the examples from a previous question I have:
$(window).keypress(function(event) {
if (!(event.which == 115 && event.ctrlKey) && !(event.which == 19)) return true;
$("form input[name=save]").click();
event.preventDefault();
return false;
});
Is it also possible to change this to work for the Mac cmd key?
I have tried (!(event.which == 115 && (event.cmdKey || event.ctrlKey)) && !(event.which == 19))
but this didn't work.
Use the event.metaKey to detect the Command key
$(document).keypress(function(event) {
if (event.which == 115 && (event.ctrlKey||event.metaKey)|| (event.which == 19)) {
event.preventDefault();
// do stuff
return false;
}
return true;
});
For detecting ctrl+s
and cmd+s
, you can use this way:
Working jsFiddle.
jQuery:
var isCtrl = false;
$(document).keyup(function (e) {
if(e.which == 17) isCtrl=false;
}).keydown(function (e) {
if(e.which == 17) isCtrl=true;
if(e.which == 83 && isCtrl == true) {
alert('you pressed ctrl+s');
return false;
}
});
source (includes all keyboard shorcuts and buttons)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With