Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Отслеживание нажатия комбинации клавиш (https://javascript.ru/forum/misc/14827-otslezhivanie-nazhatiya-kombinacii-klavish.html)

MCTrane 02.02.2011 18:47

Отслеживание нажатия комбинации клавиш
 
Можно ли отследить нажатие комбинации клавиш с помощью JS?

DooMer 02.02.2011 18:57

<script>
function press(e){
alert(e.charCode + " " + e.keyCode);
}
</script>
<input type="text" onkeypress="press(event)">


UPD - в ФФ работет, в Хроме и ИЕ нет, больше не проверял

MCTrane 02.02.2011 19:01

Значит кроссобраузерного решения нет?

UnderShot 02.02.2011 19:05

[elem].onkeypress=function(event){
  event=event||window.event;
  alert(event.keyCode)
}

Vulkan 02.02.2011 19:55

Мне недавно нужен был такой вариант решил так:
при нажатии клавиши добавлял в объект код клавиши, если их несколько соответственно туда добавилось несколько, а если клавиша отжималась брал её код и удалял из объекта, а обработчик собственно по объекту проходит и делает нужные действия.

MCTrane 02.02.2011 19:57

Спасибо всем

x-yuri 02.02.2011 20:06

кроссбраузерное решение есть

Цитата:

Сообщение от Vulkan
Мне недавно нужен был такой вариант решил так:
при нажатии клавиши добавлял в объект код клавиши, если их несколько соответственно туда добавилось несколько, а если клавиша отжималась брал её код и удалял из объекта, а обработчик собственно по объекту проходит и делает нужные действия.

замороченный какой-то вариант

DooMer 03.02.2011 12:01

x-yuri,
Ctrl+C не отследишь кроссбраузерно

Vulkan 03.02.2011 12:54

Цитата:

Сообщение от x-yuri (Сообщение 90874)
замороченный какой-то вариант

просто писал мини игрушку где надо было отследить иногда и три клавиши (стрелки и буквенную например). Мне удобно было.

Serg_pnz 03.02.2011 13:27

Еще библиотека http://www.openjs.com/scripts/events...ard_shortcuts/
работает сама по себе, прикручивал к Mootools 1.11 - всё ok
Понимает, например, Ctrl+Shift+1


Часовой пояс GMT +3, время: 04:16.