Problema de tempo limite do Chrome com animação

Eu escrevi um Slider simples no jQuery com autplay. Se a reprodução automática estiver ativada, é definido um setTimeout que aponta para uma função. Essa função possui um setTimeout recursivo para s

@All funciona bem, exceto no Chrome. Depois de alterar uma guia, aguarde um pouco e retorne, o controle deslizante está surtando. Parece que existem várias instâncias do tempo limite ativas ... mas esse não pode ser o caso, pois eu indico o tempo limite para a mesma variáve

Algum código relevante:

var timer;

  function autoplay() {
    currentPosition++;
    if(currentPosition == numberOfSlides) {
      // last slide
      currentPosition = 0;  
    }
    manageNavigation(currentPosition);

    // Hide / show controls
    manageControls(currentPosition);

    // animate the slides
    slideshowAnimate();  

    // set timer
    if(autoplay_enable) {
      //clearTimeout(timer);
      timer = setTimeout(function() { autoplay() }, interval*1000)     
     }
   }
  function setTimer() { 
    if(autoplay_enable) {
      timer = setTimeout(function() { autoplay() }, interval*1000)     
    }
  }

  setTimer();

questionAnswers(3)

yourAnswerToTheQuestion