Normalement, je définirais l'intervalle sur une variable puis l'effacerais comme var the_int = setInterval(); clearInterval(the_int);
mais pour que mon code fonctionne, je le mets dans une fonction anonyme:
function intervalTrigger() {
setInterval(function() {
if (timedCount >= markers.length) {
timedCount = 0;
}
google.maps.event.trigger(markers[timedCount], "click");
timedCount++;
}, 5000);
};
intervalTrigger();
Comment effacer cela? J'ai essayé et essayé var test = intervalTrigger(); clearInterval(test);
d'être sûr, mais cela n'a pas fonctionné.
Fondamentalement, j'ai besoin de cela pour arrêter le déclenchement une fois que mon Google Map est cliqué, par exemple
google.maps.event.addListener(map, "click", function() {
//stop timer
});
javascript
settimeout
dom-events
Oscar Godson
la source
la source
setInterval
fonctionne aussi bien quewindow.setInterval
.la source
la source
Le moyen le plus simple auquel je puisse penser: ajouter une classe.
Ajoutez simplement une classe (sur n'importe quel élément) et vérifiez à l'intérieur de l'intervalle s'il y en a. C'est plus fiable, personnalisable et multilingue que tout autre moyen, je crois.
la source