Событие нажатия клавиши альт срабатывает только один раз, но при клике правой кнопкой мыши в рабочей области снова срабатывает один раз...
document.addEventListener('keydown',witch_key_down);
document.addEventListener('keyup',witch_key_up);
function witch_key_down(e){
if (event.keyCode=='18') window.alt=true;
document.getElementById('output').innerHTML=window.alt;
}
function witch_key_up(e){
window.alt=false;
document.getElementById('output').innerHTML=window.alt;
}
<div id="output">false</div>
Думаю проблема тут не в самом Javascript, а в самом нажатии на Alt. Потому что когда человек в браузере (как и в большинстве программ) нажимает просто Alt, то он попадает на меню браузера (и если нажать например стрелку ↓, то оно появится):
То есть, в итоге, все работает, но в сочетании с Alt, скорее всего, лучше работать одновременно с другими клавишами.
P.S. служебные клавиши можно проверять не по номеру keyCode
, а вот так:
event.ctrlKey
, event.altKey
, event.shiftKey
, event.metaKey
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Почему здесь при модификации объекта из функции, не меняется исходный объект? Спасибо!!