dalnick
@dalnick

Как в js проверить зажата кнопка или нет?

Имеется игра на html5 в которой за движение в направлении вверх отвечает кнопка div, есть атрибут
onclick, при нажатии включается функция и персонаж поднимается на 15 пикселей вверх, как сделать так чтобы персонаж непрерывно поднимался пока кнопка зажата.

Мне нужно что-то типа этого, но чтобы работало не на клавишах а на кнопке
if (e.keyCode === 38 /* up */ || e.keyCode === 87 /* w */){
    moveUp()
  }
  • Вопрос задан
  • 487 просмотров
Решения вопроса 1
@Banan44
Full Stack
onmousedown (зажали) --> какой-то код --> onmouseup (отпустили)
пример:
const block = document.querySelector('.block')
		let interval
		let count = 0
		
		block.addEventListener('mousedown', event => {
			console.log('зажали')
			interval = setInterval(() => {
				count++
				console.log(count)
			}, 50)
		})

		block.addEventListener('mouseup', event => {
			console.log('отпустили')
			clearInterval(interval)
		})
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы