Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как определить нажата какая-либо клавиша или нет? (https://javascript.ru/forum/misc/7315-kak-opredelit-nazhata-kakaya-libo-klavisha-ili-net.html)

subzey 26.01.2010 23:40

Gvozd,
Я просто с таким же способом возился — ненадежно это.
Вдруг, какой-то несознательно поставленный обработчик сделает по keydown stopPropagation() или клавиша будет нажата пока окно не активно?
Так что, имхо, без особой необходимости (или, как раз-таки, экзотических случаев типа отслеживания WinKey) делать так не стóит…

Gvozd 26.01.2010 23:50

Цитата:

Сообщение от subzey
Я просто с таким же способом возился — ненадежно это.

спасибо. будем знать

PeaceCoder 27.01.2010 02:01

Цитата:

Сообщение от subzey
Это ж просто CRLF, зачем?

потому что они не экранируются при генерировании документа и твой пример не запускается. кстати это баг хайлайтера.

subzey 27.01.2010 02:18

Да, вроде, запускается и так. (Opera 10.10)

Но в любом случае, этот код был, прежде всего, для человека, потом — для браузера, и, уж в последнюю очередь, — для хайлайтера. :)

PeaceCoder 27.01.2010 02:24

Цитата:

Сообщение от subzey
Да, вроде, запускается и так. (Opera 10.10)

да в опере идет. а в мозиле нет. пишет типа незавершенная строка \n. через eval видимо идет

subzey 27.01.2010 02:36

PeaceCoder,
И впрямь!
Кстати, самое забавное, что под IE6-то запускается нормально.

Бобр 30.01.2010 11:29

Почему-то не могу добавить отзыв Gvozd . Пишут, что я должен добавить отзыв кому-то ещё. Кому? Я добавил subzey и PeaceCoder - не помогло.

Gvozd 30.01.2010 12:08

Бобр,
фиг с ней, с кармой. я не кармодрочер. простой благодарности вполне достаточно

Бобр 30.01.2010 13:04

Gvozd
Тогда просто благодарю! :) :victory:

Бобр 15.03.2010 05:34

Цитата:

Сообщение от subzey (Сообщение 42207)
Бобр,
<script type="text/javascript">
function foo(e){
alert("Ctrl " + (e.ctrlKey?"нажат":"не нажат") + "\r\n" + "Shift " + (e.shiftKey?"нажат":"не нажат") + "\r\n" + "Alt " + (e.altKey?"нажат":"не нажат") + "\r\n" + "Meta " + (e.metaKey?"нажата":"не нажата"));
}
</script>
<button onclick="foo(event)">Щелкни меня!</button>

Такой кривой вопрос, как вызвать foo, через addEventListener?

Так, не работает:
document.getElementById('myA').addEventListener("click", 
  function() {foo(event)}, false);

Чего хочет - не говорит.


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