Zeb*_*bra 27 javascript mouse jquery click
我需要一个按下按钮时执行功能的功能,当按钮松开时我停止执行
$('#button').--while being held down--(function() {
//execute continuously
});
Run Code Online (Sandbox Code Playgroud)
Yi *_*ang 53
我相信这样的事情会起作用:
var timeout, clicker = $('#clicker');
clicker.mousedown(function(){
timeout = setInterval(function(){
// Do something continuously
}, 500);
return false;
});
$(document).mouseup(function(){
clearInterval(timeout);
return false;
});
Run Code Online (Sandbox Code Playgroud)
看这个演示:http://jsfiddle.net/8FmRd/
小智 18
对原始答案的一个小修改:
$('#Clicker').mousedown(function () {
//do something here
timeout = setInterval(function () {
//do same thing here again
}, 500);
return false;
});
$('#Clicker').mouseup(function () {
clearInterval(timeout);
return false;
});
$('#Clicker').mouseout(function () {
clearInterval(timeout);
return false;
});
Run Code Online (Sandbox Code Playgroud)
使用Clicker上的mouseout事件,当您将鼠标移出点击区域时,它会停止.
我建议两次做同样的事情的原因是为了获得更平滑的效果.如果在设置超时之前没有执行过一次,那么在发生某些事情之前,这将延迟500毫秒.