通常,我会将间隔设置为一个变量,然后像var the_int = setInterval(); clearInterval(the_int);
一样清除它,但为了让我的代码正常工作,我将其放在一个匿名函数中:
function intervalTrigger() {
setInterval(function() {
if (timedCount >= markers.length) {
timedCount = 0;
}
google.maps.event.trigger(markers[timedCount], "click");
timedCount++;
}, 5000);
};
intervalTrigger();
我如何清除它?我试了一试,并尝试了var test = intervalTrigger(); clearInterval(test);
来确认,但这不起作用。
基本上,我需要停止触发,一旦我的谷歌地图被点击,例如。
google.maps.event.addListener(map, "click", function() {
//stop timer
});
发布于 2010-05-25 07:50:47
setInterval
方法返回一个句柄,您可以使用该句柄清除间隔。如果你想让函数返回它,你只需要返回方法调用的结果:
function intervalTrigger() {
return window.setInterval( function() {
if (timedCount >= markers.length) {
timedCount = 0;
}
google.maps.event.trigger(markers[timedCount], "click");
timedCount++;
}, 5000 );
};
var id = intervalTrigger();
然后清除间隔:
window.clearInterval(id);
发布于 2012-08-31 19:21:23
// Initiate set interval and assign it to intervalListener
var intervalListener = self.setInterval(function () {someProcess()}, 1000);
function someProcess() {
console.log('someProcess() has been called');
// If some condition is true clear the interval
if (stopIntervalIsTrue) {
window.clearInterval(intervalListener);
}
}
发布于 2013-10-08 19:46:47
the_int=window.clearInterval(the_int);
https://stackoverflow.com/questions/2901108
复制相似问题