Как я могу захватывать события клавиатуры (нажатие клавиш, нажатие клавиш,) при перетаскивании изображения, закладки - PullRequest
1 голос
/ 07 февраля 2011
$(element).bind("dragover", function () {
    $(document).keypress(function(e){
        console.log(e.which + ": " + String.fromCharCode(e.which));
    });
}

Я не могу обнаружить события нажатия клавиш после начала перетаскивания. Есть ли другой способ обнаружить ввод с клавиатуры?

Ответы [ 2 ]

0 голосов
/ 07 февраля 2011

Привязка события не сработала ... пробовал с помощью нажатия клавиш, нажатия клавиш, набора ключей SetCapture только для IE, но мне нужно, чтобы он был совместим с Chrome.Я пытаюсь что-то с addEventListener, но я застрял с ним ... Если я найду решение, я опубликую это

0 голосов
/ 07 февраля 2011

Такие события, как перетаскивание изображения, закладка (которые явно не устанавливаются как перетаскиваемые) и другие модальные диалоги, такие как alert() и confirm(), как известно, "приостанавливают" активность прослушивания событий, а также любые таймеры,работает в этом контексте.

Тем не менее, вы можете посмотреть на setCapture() метод.Включает захват мыши для указанного элемента.

Другими словами, он перенаправляет все события мыши на указанный элемент DOM, пока не будет выполнен вызов .releaseCapture().

Традиционно используется в сценариях перетаскивания.

Передача true в качестве параметра позволит текущему элементу (если контейнер) захватить все события мыши.т.е. заставляет родительский контейнер перехватывать события.

Передача false позволит событиям мыши достигать своих намеченных целей до появления пузырьков.

Эти ссылки ниже являются хорошей отправной точкой ..

http://blog.stchur.com/category/advanced-javascript/page/2/

http://javascript.gakaa.com/object-setcapture-4-0-5-.aspx

...