Действие повторения JavaScript, когда мышь удерживается

Там должен иметь функцию JavaScript, повторил каждые несколько миллисекунды, что кнопка HTML удерживается? Было бы замечательно, если бы это могло бы быть сделано со стандартным JavaScript, но использование jQuery или плагин jQuery было бы большим также.

17
задан Brian 20 December 2009 в 05:48
поделиться

2 ответа

В событии mousedown () этот код запускает повторяющийся таймер (каждые 500 мс в этом примере), который отменяется, как только mouseup () происходит событие. Это должно быть адаптировано к вашему желанию:

var intervalId;
$("#button").mousedown(function() {
  intervalId = setInterval(do_something, 500);
}).mouseup(function() {
  clearInterval(intervalId);
});

function do_something() {
  // whatever
}

См. setInterval () для получения дополнительной информации об очистке таймеров.

27
ответ дан 30 November 2019 в 11:17
поделиться

Я бы использовал функцию javascript setInterval () в функции, которая вызывается при нажатии мыши.

<input type="button" id="button" onmousedown="inter=setInterval(startAction, 1*1000);"
onmouseup="clearInterval(inter);" value="click here" />

<script type="text/javascript">
    function startAction(){
        //whatever you want done
    }
</script>
6
ответ дан 30 November 2019 в 11:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: