Подтвердить что ты не робот

Событие jquery keypress для cmd + s AND ctrl + s

Используя один из примеров из предыдущего вопроса, я:

$(window).keypress(function(event) {
    if (!(event.which == 115 && event.ctrlKey) && !(event.which == 19)) return true;
    $("form input[name=save]").click();
    event.preventDefault();
    return false;
});

Можно ли также изменить это для работы с MC-ключом Mac?

Я пробовал (!(event.which == 115 && (event.cmdKey || event.ctrlKey)) && !(event.which == 19)), но это не сработало.

4b9b3361

Ответ 1

Используйте event.metaKey, чтобы обнаружить командный ключ

$(document).keypress(function(event) {
    if (event.which == 115 && (event.ctrlKey||event.metaKey)|| (event.which == 19)) {
        event.preventDefault();
        // do stuff
        return false;
    }
    return true;
});

Ответ 3

Это работает для меня:

$(document).keypress(function(event) {
    if ((event.which == 115 || event.which == 83) && (event.ctrlKey||event.metaKey)|| (event.which == 19)) {
        event.preventDefault();
        // do stuff
        return false;
    }
    return true;
});