код левой кнопки мыши
Клавиатура
Примечание: названия буквенных и цифровых клавиш точно такие же, как и сами символы этих клавиш. То есть, клавиша «b» записывается как b, а клавиша «5» как 5.
Следующие названия клавиш используются, когда Numlock выключен:
Эти названия клавиш используются при включенном Numlock’e:
Клавиши расширенных функций Мультимедийных и Интернет-клавиатур:
Возможна запись VKnn, где nn является шестнадцатиричным виртуальным кодом клавиши. Несмотря на то, что этот редко используемый метод поддерживается всеми версиями программы, только с версии 1.0.38.02 и выше для некоторых типов горячих клавиш реализовано предотвращение отслеживания их функцией «keyboard hook» (обработчик клавиатурных прерываний). Например, следующая комбинация клавиш не использует обработчик клавиатурных прерываний (keyboard hook), и как следствие может быть запущена нажатием как клавиши Home, так и NumpadHome:
Джойстик
Несмотря на то, что следующие управляющие элементы джойстика не могут использоваться как горячие клавиши, их можно использовать при помощи команды GetKeyState:
JoyR: руль джойстика или 4-ая ось джойстика.
JoyU и JoyV: 5-ая и 6-ая оси джойстика.
JoyPOV: the point-of-view (hat) control (POV control, «шляпка» или «переключатель видов»; например, вид глазами игрока).
JoyName: название джойстика.
JoyButtons: количество кнопок, поддерживаемых джойстиком (не всегда точное).
JoyAxes: количество направлений, поддерживаемых джойстиком.
JoyInfo: генерирует строку, состоящую из нуля или более знаков, иллюстрирующих возможности джойстика: Z (имеется Z направление), R (имеется R направление), U (имеется U направление), V (имеется V направление), P (имеется POV control), D (POV control имеет ограниченное количество дискретных/промежуточных настроек), C (POV control передает непрерывные/точные данные). Пример строки: ZRUVPD.
Несколько джойстиков: если вы используете несколько джойстиков одновременно, то для более точной адресации команды используйте при записи номер джойстика перед именем клавиши джойстика. Например запись 2joy1 будет обозначать первую кнопку второго джойстика.
Примечание: если у вас возникли проблемы с определением скриптами вашего джойстика, вы можете попробовать изменить номер джойстика с 1 на что-нибудь другое, даже несмотря на то, что к компьютеру у вас подключен всего один. Неизвестно, по каким мистическим причинам, но иногда это вместе с использованием нашего тестового скрипта даёт положительный результат.
Использование джойстика как мыши: специальный скрипт превращает ваш джойстик в мышь (см. ссылку в оригинале статьи).
Дистанционные пульты управления
Специальные клавиши
Если ваши клавиатура или мышь имеют клавиши, не перечисленные выше, вы всё равно имеете возможность использовать их в качестве горячих клавиш, используя следующий метод:
Коды виртуальных клавиш
Нижеследующая таблица показывает названия именованных констант, шестнадцатеричные значения, и эквиваленты мыши или клавиатуры для кодов виртуальных клавиш, используемых системой. Коды перечисляются в нарастающем порядке.
Windows 2000/XP: для американской стандартной клавиатуры это клавиша ‘;:’.
Windows 2000/XP: для американской стандартной клавиатуры это клавиша ‘/?’.
Windows 2000/XP: для американской стандартной клавиатуры это клавиша ‘`
Список кодов клавиш JavaScript – коды клавиш событий нажатия клавиш для ввода, пробела, возврата и т.д.
События клавиатуры JavaScript помогают фиксировать действия пользователя с клавиатурой.
Как и многие другие события JavaScript, KeyboardEvent интерфейс предоставляет все необходимые свойства и методы для обработки каждого нажатия клавиши, которое пользователь делает с помощью клавиатуры.
Было написано много статей о том, как они работают и как их использовать. В то же время W3.org продолжает обновлять спецификацию, вводя новые свойства, исключая существующие и отмечая определенный код как устаревший.
Из-за этого веб-разработчикам важно продолжать изучать KeyboardEvent интерфейс, чтобы знать, что именно им следует использовать, а что больше не актуально.
В этой статье мы узнаем о:
Надеюсь, тебе понравится.
Интерфейс KeyboardEvent предоставляет информацию с использованием определенных констант, свойств и одного метода (по состоянию на январь 2021 г.). Он расширяет UIEvent интерфейс, который в конечном итоге расширяет Event интерфейс.
Вы можете добавить каждый из этих типов событий к элементу или document объекту HTML с помощью addEventListener метода. Вот пример прослушивания keydown события для элемента с идентификатором ‘type-here’:
Если вы печатаете event объект в консоли браузера, вы увидите все его свойства и методы наряду с теми, которые он наследует от UIEvent и Event интерфейсов.
Я нажал клавишу a во время обработки keyup события
Прежде чем мы пойдем дальше, как насчет игровой площадки для изучения всех событий клавиатуры, их свойств, характеристик и так далее? Я думаю, будет здорово использовать его вместе с этой статьей и не только.
Просто наведите курсор на любое место в приложении, встроенном ниже, и введите любую клавишу, чтобы увидеть контекстную информацию о нем.
Вы также можете отфильтровать нужные события, сняв флажки вверху. Так что попробуйте:
Игровая площадка событий клавиатуры
Если у вас есть какие-либо проблемы с доступом к указанной выше игровой площадке, вы можете получить доступ к этому инструменту прямо здесь: https://keyevents.netlify.app/ И вы можете найти исходный код демонстрации здесь: https://github.com/ atapas / js-keyevents-demo
Если все три события привязаны к элементу DOM, порядок запуска будет следующим:
Среди этих событий наиболее часто используемым событием клавиатуры является (или должно быть), keydown потому что:
keydown против keyup
Со всем этим объяснением, keydown событие является явным победителем и должно стать самым популярным (используемым) ключевым типом события.
Это вопрос на миллиард долларов! Самый короткий ответ – это зависит от обстоятельств. Но на чем? Это зависит от:
Но прежде чем мы туда доберемся, давайте посмотрим на предварительный просмотр некоторых полезных свойств и методов KeyboardEvent интерфейса.
Последние три свойства устарели, и вам следует использовать это key свойство. key Свойство имеет широкую поддержку браузера.
Итак, пока вы не используете какие-либо старые браузеры, event.key свойства должно быть достаточно, чтобы вы могли идентифицировать ключ. Если вам необходимо поддерживать более старый браузер, лучшим вариантом будет event.which свойство.
Если ваш код использует какие-либо из устаревших свойств и у вас есть возможность реорганизовать этот код, всегда лучше пойти на это.
Изменить ключи
Ключевые комбинации
Мы можем комбинировать несколько клавиш и выполнять действия на основе сочетаний клавиш. Фрагмент кода ниже показывает, как объединить Control и z ключ для определения действия:
Вот еще один пример, демонстрирующий еще несколько комбинаций клавиш. Пожалуйста, попробуйте:
Попробуйте комбинации клавиш
Имя ключа | event.which | event.key | event.code | Ноты |
---|---|---|---|---|
Backspace | 8 | Backspace | Backspace | |
вкладка | 9 | Вкладка | Вкладка | |
войти | 13 | Войти | Войти | |
сдвиг (слева) | 16 | сдвиг | ShiftLeft | event.shiftKey правда |
сдвиг (вправо) | 16 | сдвиг | ShiftRight | event.shiftKey правда |
ctrl (слева) | 17 | Контроль | ControlLeft | event.ctrlKey правда |
ctrl (справа) | 17 | Контроль | ControlRight | event.ctrlKey правда |
alt (слева) | 18 | Все | AltLeft | event.altKey правда |
alt (справа) | 18 | Все | AltRight | event.altKey правда |
пауза / перерыв | 19 | Пауза | Пауза | |
Caps Lock | 20 | CapsLock | CapsLock | |
побег | 27 | Побег | Побег | |
пространство | 32 | Космос | event.key Значение представляет собой единое пространство. | |
страница вверх | 33 | PageUp | PageUp | |
листать вниз | 34 | Листать вниз | Листать вниз | |
конец | 35 | Конец | Конец | |
Главная | 36 | Главная | Главная | |
стрелка влево | 37 | Стрелка влево | Стрелка влево | |
стрелка вверх | 38 | ArrowUp | ArrowUp | |
правая стрелка | 39 | Стрелка вправо | Стрелка вправо | |
стрелка вниз | 40 | Стрелка вниз | Стрелка вниз | |
Снимок экрана | 44 | Снимок экрана | Снимок экрана | |
вставить | 45 | Вставить | Вставить | |
удалять | 46 | удалять | удалять | |
0 | 48 | 0 | Цифра 0 | |
1 | 49 | 1 | Цифра 1 | |
2 | 50 | 2 | Цифра 2 | |
3 | 51 | 3 | Цифра 3 | |
4 | 52 | 4 | Цифра 4 | |
5 | 53 | 5 | Цифра 5 | |
6 | 54 | 6 | Цифра 6 | |
7 | 55 | 7 | Цифра 7 | |
8 | 56 | 8 | Цифра 8 | |
9 | 57 | 9 | Цифра 9 | |
а | 65 | а | KeyA | |
б | 66 | б | KeyB | |
c | 67 | c | KeyC | |
d | 68 | d | KeyD | |
является | 69 | является | KeyE | |
ж | 70 | ж | KeyF | |
g | 71 | g | KeyG | |
час | 72 | час | KeyH | |
i | 73 | i | KeyI | |
j | 74 | j | KeyJ | |
k | 75 | k | KeyK | |
л | 76 | л | KeyL | |
m | 77 | m | KeyM | |
п | 78 | п | KeyN | |
О | 79 | О | KeyO | |
p | 80 | p | KeyP | |
q | 81 | q | KeyQ | |
р | 82 | р | KeyR | |
s | 83 | s | KeyS | |
т | 84 | т | KeyT | |
u | 85 | u | KeyU | |
v | 86 | v | KeyV | |
в | 87 | в | KeyW | |
Икс | 88 | Икс | KeyX | |
и | 89 | и | KeyY | |
с участием | 90 | с участием | KeyZ | |
клавиша левого окна | 91 | Мета | MetaLeft | event.metaKey правда |
клавиша правого окна | 92 | Мета | MetaRight | event.metaKey правда |
клавиша выбора (контекстное меню) | 93 | Контекстное меню | Контекстное меню | |
цифровая клавиатура 0 | 96 | 0 | Numpad0 | |
цифровая клавиатура 1 | 97 | 1 | Numpad1 | |
цифровая клавиатура 2 | 98 | 2 | Numpad2 | |
цифровая клавиатура 3 | 99 | 3 | Numpad3 | |
цифровая клавиатура 4 | 100 | 4 | Numpad4 | |
цифровая клавиатура 5 | 101 | 5 | Numpad5 | |
цифровая клавиатура 6 | 102 | 6 | Numpad6 | |
цифровая клавиатура 7 | 103 | 7 | Numpad7 | |
цифровая клавиатура 8 | 104 | 8 | Numpad8 | |
цифровая клавиатура 9 | 105 | 9 | Numpad9 | |
умножать | 106 | * | NumpadMultiply | |
Добавить | 107 | + | NumpadAdd | |
вычесть | 109 | – | Numpad: вычесть | |
десятичная точка | 110 | . | NumpadDecimal | |
делить | 111 | / | NumpadDivide | |
f1 | 112 | F1 | F1 | |
f2 | 113 | F2 | F2 | |
f3 | 114 | F3 | F3 | |
f4 | 115 | F4 | F4 | |
f5 | 116 | F5 | F5 | |
f6 | 117 | F6 | F6 | |
f7 | 118 | F7 | F7 | |
f8 | 119 | F8 | F8 | |
f9 | 120 | F9 | F9 | |
f10 | 121 | F10 | F10 | |
f11 | 122 | F11 | F11 | |
f12 | 123 | F12 | F12 | |
числовой замок | 144 | NumLock | NumLock | |
блокировка прокрутки | 145 | ScrollLock | ScrollLock | |
отключение звука | 173 | AudioVolumeMute | ⚠️ В event.which Firefox значение 181. Также FF предоставляет кодовое значение как, VolumeMute | |
громкость звука убавить | 174 | AudioVolumeDown | ⚠️ В event.which Firefox значение 182. Также FF предоставляет кодовое значение как, VolumeDown | |
громкость звука | 175 | AudioVolumeUp | ⚠️ В event.which Firefox значение 183. Также FF предоставляет кодовое значение как, VolumeUp | |
проигрыватель медиа | 181 | LaunchMediaPlayer | ⚠️ Значение ️ event.which в Firefox равно 0 (без значения). Также FF предоставляет кодовое значение как, MediaSelect | |
запустить приложение 1 | 182 | LaunchApplication1 | ⚠️ Значение ️ event.which в Firefox равно 0 (без значения). Также FF предоставляет кодовое значение как, LaunchApp1 | |
запустить приложение 2 | 183 | LaunchApplication2 | ⚠️ Значение ️ event.which в Firefox равно 0 (без значения). Также FF предоставляет кодовое значение как, LaunchApp2 | |
точка с запятой | 186 | ; | Точка с запятой | ⚠️ event.which Значение 59 в Firefox |
знак равенства | 187 | Равно | ⚠️ event.which Значение 61 в Firefox | |
пункт | 188 | , | Пункт | |
рывок | 189 | – | Minus | ⚠️ event.which Значение 173 в Firefox |
period | 190 | . | Period | |
косая черта | 191 | / | Слэш | |
Обратная цитата / серьезный акцент | 192 | ` | Обратная цитата | |
открытая скобка | 219 | [ | Кронштейн: Левый | |
обратная косая черта | 220 | Обратная косая черта | ||
закрывающая скобка | 221 | ] | Кронштейн Правый | |
одиночная кавычка | 222 | ‘ | Цитата |
Пожалуйста, обратите внимание:
Так что насчет виртуальных клавиатур, например, использования наших мобильных телефонов или планшетов или любых других устройств ввода?
В спецификации сказано, что если виртуальная клавиатура имеет такое же расположение клавиш и функциональность, что и стандартная клавиатура, то она должна иметь соответствующий атрибут кода. В противном случае он не вернет правильное значение.
На этом пока все. Спасибо, что дочитали до этого места! Подключимся. Вы можете @ меня в Twitter (@tapasadhikary) с комментариями или не стесняйтесь подписываться.
Научитесь программировать бесплатно. Учебная программа с открытым исходным кодом freeCodeCamp помогла более 40 000 человек получить работу в качестве разработчиков.Начать
JavaScript: Информация О Нажатой Клавише 👇🏽
В данной статье рассмотрим, как получить информацию о нажатой клавише клавиатуры или кнопки мыши, а также как выполнять необходимые действия (нужный код) при нажатии определенных сочетаний клавиш или кнопок (правый/левый клик мыши).
Чтобы получить информацию, о том какая кнопка клавиатуры нажимается в данный момент, воспользуемся следующим кодом:
Номер кнопки находится в переменной keyNum
Узнать keyCode кнопки можете здесь:
Выполнение кода в зависимости от нажатой клавиши
Давайте теперь будем выполнять необходимые действия в зависимости от нажатой клавиши
Для этой задачи воспользуемся оператором switch
В конструкции case укажите номер кнопки, для которой будет выполнен необходимый код.
Вместо console.log выполняйте необходимые действия.
Если была нажата клавиша, которой нет в списке, то для неё можете выполнить другой код. Писать в default
Как отследить комбинации нажатых клавиш
Отследить нажатие CTRL, SHIFT и ALT можно также другими способами (данный способ необходим чтобы отследить комбинации)
Например, отследить нажатие CTRL можно следующим образом:
Используя всю ранее полученную информацию, определим нажатую комбинацию клавиш, например, CTRL + F5
Как вы могли заметить, обращаться к клавишам в JavaScript можно несколькими способами. Например, следующие строки кода позволяют нам получить один и тот же результат:
Мы рассмотрели, как получить информацию о нажатой клавише на клавиатуре. Теперь давайте рассмотрим, как обработать события мыши.
Информация о нажатой кнопке мыши JavaScript
Рассмотрим, как определить какая кнопка мыши нажимается над объектом: левая кнопка, правая или дабл клик
Выполнение кода при клике левой кнопкой мыши
Выполнение кода при клике правой кнопкой мыши
Выполнение кода при двойном клике по кнопке
Надеюсь, вам понравилась данная информация. Если вам интересна тема web-разработки, то можете следить за выходом новых статей в Telegram.
Ремаппим клавиатуру и мышь
Зачем оно?
Но причин на самом деле может быть гораздо больше. Чаще всего люди хотят ремапнуть свою клавиатуру из-за существования клавиши Caps Lock, лично мне эта клавиша безразлична, неприязнь к ней скорее возникает у тех, кто имеет некоторые проблемы со слеПОЙ ПЕЧАТЬЮБ
Горазо реже, но все таки возникает ситуация, когда очень хочется ремапнуть кнопки мыши. Что бы было понятнее, на кой черт надо трогать мышь, опишу свою ситуацию. Я каждый день провожу несколько часов за беседами в Mumble, где для активации микрофона у меня выбрана функция Push-to-Talk. Мышь я держу постоянно, а вот над клавиатурой рука находится не всегда, поэтому в качестве шорткат-кнопки на PtT была выбрана кнопка Mouse5, которая, к сожалению, используется многими приложениями, вопреки моим желаниям. Больше всего раздражает эта кнопка во время серфинга, в любом браузере на нее повешена функция «go forward». Когда у меня была мышка Razer Lachesis, то с этим проблем было мало, штатный софт от производителя позволял делать с кнопками мыши что душе угодно. К сожалению, с более качественной мышью G9x пришлось перейти на менее удобный софт — SetPoint, который не поддерживает подобные выкрутасы.
Надеюсь, предисловие достаточно подробное, поэтому перейду-ка я пожалуй к делу.
Ремаппим клавиатуру
Несмотря на то, что к некоторым клавиатурам (Microsoft, Logitech G-Series, Lenovo ThinkPad) существует фирменный софт, дающий возможность делать подобные трюки, я опишу утилиты, которые будут работать с любой клавиатурой.
На самом-то деле все описанные ниже утилиты работают с реестром, то есть, если хочется приключений и интимных развлечений с мозгом, можно все, что нужно проделать самостоятельно и без посредников. Подобный метод я описывать не буду, так как сам не разобрался с этим, если кому интересно, копайтесь где-то здесь:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
SharpKeys
Простенькая утилитка, позволяющая лишь менять местами функции клавиш, да и то не всех. Работает только с WinXP\2003, упомянул о ней лишь из-за достаточно таки высокой популярности.
Microsoft Keyboard Layout Creator
Последняя (1.4) версия доступна на MS Download Center.
KeyTweak
Ничего лучше для решения подобных задач просто не существует. Удобный и понятный интерфейс, мощный функционал и далее по списку. Работает на любой NT-версии системы, не требует дотнета и весит всего около 300КБ.
Мануал и установщик можно загрузить с сервера разработчика.
Ремаппим мышь
Среди вырвиглазных, кривых и нерабочих программ, обещающих справиться с поставленной задачей я нашел XMouse Button Control, что является идеальным вариантом. Поставить можно все, что душе будет угодно, хоть четырехсложные сочетания клавиш. При любом ремапе можно выбрать способ работы кнопки, к примеру залипание, таггл, рипит и так далее.
Единственное, что не греет душу, так это то, что утилита по сути является костылем. Она перехватывает ввод данных с мыши и изменяет их в соответствии с выставленными пользователем настройками. Баг я обнаружил всего один, при задании длинных (более трех кнопок) сочетаний клавиш программа иногда запинается, то есть вводит сочетание в неправильном порядке.
Ну вот, собственно, и все, о чем я хотел поведать. Надеюсь, топик окажется полезным. Если у читателя есть какое-либо иное мнение насчет решения подобных задач, я с удовольствием его прочитаю в комментариях.
Ах да, хотелось бы увидеть аналог этого топика, но для Linux, им я тоже пользуюсь 🙂
- С чем сделать картофельное пюре на гарнир
- 0x80070057 код ошибки в windows 10 как исправить при установке windows