Osc*_*son 162 javascript settimeout dom-events
通常,我将间隔设置为变量然后清除它,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();
Run Code Online (Sandbox Code Playgroud)
我该如何清除这个?我试了一下并试图var test = intervalTrigger(); clearInterval(test);
确定,但那没用.
基本上,我需要这个来点击我的谷歌地图后停止触发,例如
google.maps.event.addListener(map, "click", function() {
//stop timer
});
Run Code Online (Sandbox Code Playgroud)
Guf*_*ffa 260
该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();
Run Code Online (Sandbox Code Playgroud)
然后清除间隔:
window.clearInterval(id);
Run Code Online (Sandbox Code Playgroud)
Mar*_*lea 10
// 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);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
168011 次 |
最近记录: |