Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
按下按钮时,每秒执行一次javascript函数_Javascript_Jquery - Fatal编程技术网

按下按钮时,每秒执行一次javascript函数

按下按钮时,每秒执行一次javascript函数,javascript,jquery,Javascript,Jquery,我需要连续执行javascript函数(例如,每秒钟或半秒钟),但这需要在按下按钮时执行 我尝试了以下方法: $("#buttonID").bind('touchstart',function(event){ setInterval(function() { FUNCTION }, 1000); }); 使用“mousedown”也不是这样 问题的答案没有解决我的问题,所以我不认为这个问题是重复的。 是否有初学者的错误,而我却看

我需要连续执行javascript函数(例如,每秒钟或半秒钟),但这需要在按下按钮时执行

我尝试了以下方法:

$("#buttonID").bind('touchstart',function(event){ 
        setInterval(function() {
            FUNCTION
        }, 1000);
    });
使用“mousedown”也不是这样

问题的答案没有解决我的问题,所以我不认为这个问题是重复的。
是否有初学者的错误,而我却看不到?你有什么建议

您必须捕获对计时器的引用,并在释放鼠标时取消它

var timer=null;//将保留对计时器的引用
$(“#buttonID”).on('mousedown',函数(事件){
//设置计时器参考
计时器=设置间隔(函数(){
console.log(“函数运行”);
}, 1000);
});
$(“#buttonID”).on('mouseup',函数(事件){
clearInterval(计时器);//取消计时器
日志(“计时器已取消”);
});


按住我运行函数请显示您使用mousedown事件尝试了什么!您使用的jQuery版本是什么?试试.on()而不是.bind()。为什么要使用bind()?除非您使用的是古老版本的jQuery,否则应该使用on()。