Показать сообщение отдельно
  #6 (permalink)  
Старый 02.08.2019, 13:52
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от j0hnik
Ставим влаги нажатым клавишам,вся соль в верхушке, остальное мишура (пример для простоты понимания, !не боевой код)
А в примере выше не тоже самое? И как 87, 68, 83, 65 может быть лёгким для понимания? У вас получается, что правый и левый shift одно и тоже! Live expression в консоли показывает {16: 1, 65: 0, 68: 0, 83: 0, 87: 0} Так какая именно клавиша нажата? Кстати у вас происходит раздувание объекта после других нажатии!

В моём примере вы можете узнать, нажат ли правый shift, или левый или оба, цифра 2 нажата на цифровой клавиатуре или нет. Если не поняли, то вот с пример с информацией о нажатых клавишах... Нажмите кнопку Посмотреть!, а затем нажмите на пустое появившееся поле, чтобы оно могло ловить нажатия клавиш!
<p id="info"></p>
<script>
var pressedKeys = {};

onkeydown = function(e) {
	if(e.code in pressedKeys) return;
	pressedKeys[e.code] = true;
};

onkeyup = function(e) {
	delete pressedKeys[e.code];
};

(function loop() {
	info.textContent = Object.keys(pressedKeys).join(", ");
	setTimeout(loop, 50);
})();
</script>


Сообщение от рони
для чего это?
Размер игрового поля.

Последний раз редактировалось Malleys, 02.08.2019 в 14:00.
Ответить с цитированием