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

Захват события Shift и Click с помощью jQuery

Кажется, я не могу одновременно захватить два события. Я пытаюсь захватить событие Shift и Click (щелчок мыши).

У меня нет проблем, фиксируя каждое действие отдельно, но не вместе.

Кто-нибудь сделал некоторые исследования по этой конкретной проблеме?

4b9b3361

Ответ 1

Да:

$(document).click(function(e) {
    if (e.shiftKey) {
        alert("shift+click")
    } 
});

Ответ 2

Вы можете проверить свойство event.shiftKey boolean.

$(selector).click(function(event) {
    if (event.shiftKey) {
        //....
    } 
});

Ответ 3

Замечание:

для обнаружения Ctrl или "Meta" (клавиша Cmd на OS X)

$(document).click(function(e)
    {
        if (e.ctrlKey)
        {
            alert("ctrl+click");
        }
    });

$(document).click(function(e)
    {
        if (e.metaKey)
        {
            alert("CMD+click");
        }
    });

Ответ 4

Если я правильно понял ваш вопрос, вы можете использовать свойство shiftKey объекта event, которое вы получаете в своем обработчике click, чтобы проверить, не был ли клавиша смены нажата.

EDIT: shiftKey, not shift

Ответ 5

Хорошей библиотекой для обработки событий нажатия клавиш является shortcut.js, доступный здесь. Это очень хорошо.

Вы можете даже захватить Crtl + Shift одновременно, что я искал.