"我正在使用setInterval(fname, 10000);在JavaScript中每10秒调用一个函数。是否有可能停止在某些事件上调用它?
我希望用户能够停止重复刷新数据。"
你可以设置一个新的变量,并在每次运行时增加++(加1),然后使用条件语句来结束它:
var intervalId = null;
var varCounter = 0;
var varName = function(){
if(varCounter <= 10) {
varCounter++;
/* your code goes here */
} else {
clearInterval(intervalId);
}
};
$(document).ready(function(){
intervalId = setInterval(varName, 10000);
});
如果将返回值设置setInterval为变量,则可以使用clearInterval它来停止它。
var myTimer = setInterval(...);
clearInterval(myTimer);
setInterval()返回一个间隔ID,您可以将其传递给clearInterval():
var refreshIntervalId = setInterval(fname, 10000);
/* later */
clearInterval(refreshIntervalId);