Отслеживание нажатия комбинации клавиш
Можно ли отследить нажатие комбинации клавиш с помощью JS?
|
<script> function press(e){ alert(e.charCode + " " + e.keyCode); } </script> <input type="text" onkeypress="press(event)"> UPD - в ФФ работет, в Хроме и ИЕ нет, больше не проверял |
Значит кроссобраузерного решения нет?
|
[elem].onkeypress=function(event){ event=event||window.event; alert(event.keyCode) } |
Мне недавно нужен был такой вариант решил так:
при нажатии клавиши добавлял в объект код клавиши, если их несколько соответственно туда добавилось несколько, а если клавиша отжималась брал её код и удалял из объекта, а обработчик собственно по объекту проходит и делает нужные действия. |
Спасибо всем
|
кроссбраузерное решение есть
Цитата:
|
x-yuri,
Ctrl+C не отследишь кроссбраузерно |
Цитата:
|
Еще библиотека http://www.openjs.com/scripts/events...ard_shortcuts/
работает сама по себе, прикручивал к Mootools 1.11 - всё ok Понимает, например, Ctrl+Shift+1 |
Цитата:
<!doctype html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <script type="text/javascript"> document.onkeydown = function( e ){ e = e || window.event; if( e.ctrlKey && e.keyCode == 67 ) d('Ctrl-C'); }; function d( s ){ var p = document.createElement('p'); var text = document.createTextNode(s); p.appendChild( text ); document.body.appendChild( p ); } </script> </body> </html> где не работает? |
Часовой пояс GMT +3, время: 10:07. |