我想为按钮创建一个javascript mousedown事件处理程序。按下按钮时,我需要处理程序重复执行,直到释放按钮(触发鼠标)。例如。按住向上按钮应该使文本框值增加,直到它被释放。
处理此问题的最佳方法是什么?
答案 0 :(得分:5)
您可以使用setInterval
:http://jsfiddle.net/5wypC/1/。
var interval = null;
var i = 0;
$('button').mousedown(function() {
clearInterval(interval); // Make sure to clear any intervals
// that are occasionally still running
interval = setInterval(function() {
$('textarea').val(i++);
}, 100);
});
$('button').mouseup(function() {
clearInterval(interval);
});