我正在使用setInterval(fname, 10000);
在 JavaScript 中每 10 秒调用一次函数。是否有可能在某些事件上停止调用它?
我希望用户能够停止重复刷新数据。
setInterval()
返回一个间隔 ID,您可以将其传递给clearInterval()
:
var refreshIntervalId = setInterval(fname, 10000);
/* later */
clearInterval(refreshIntervalId);
请参阅setInterval()
和clearInterval()
的文档。
如果将setInterval
的返回值设置为变量,则可以使用clearInterval
来停止它。
var myTimer = setInterval(...);
clearInterval(myTimer);
您可以设置一个新变量,并在每次运行时将其递增 ++(向上计数),然后我使用条件语句来结束它:
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);
});
我希望它有所帮助,这是对的。