teaCode
@teaCode
Верстальщик

Как отследить ЗАЖАТИЕ кнопки javascript?

Сейчас пишу игру, нужно отследить зажал ли пользователь кнопку. onclick не помогает, он отслежывает только когда нажали на кнопку.
  • Вопрос задан
  • 692 просмотра
Пригласить эксперта
Ответы на вопрос 2
dedalik
@dedalik
Веб разработчик
Можно проверять нажатие кнопки мыши, задать промежуток времени, которое определяет, что пользователь удерживает кнопку, в примере 1 сек

const timeout = 1000;
let idTimeout;

window.addEventListener('mousedown', function() {
  idTimeout = setTimeout(function() {
      // Кнопка нажата более 1 секунды
  }, timeout);
});

window.addEventListener('mouseup', function() {
  clearTimeout(idTimeout);
});
Ответ написан
Mecitan
@Mecitan
Уверенный пользователь клавиатуры
В своё время решал подобную задачу. Попробуйте решить через флаг и условие, выполняйте действие. Когда действие выполнено, меняете flag = true;
let flag = false;
    if(args) {
       //Ваш код

flag = true; 
}


upd: К тому, что написал я, примите к сведению ту информацию, на которую указал Сергей Сергей. В целом, это должно решить вашу задачу.

upd: Когда использовать click /mousedown для доп.информации почитайте.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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