setTimeout ускоряется с помощью нескольких вкладок

У меня проблема с setTimeout, аналогичная этой . Ползунок перемещает изображения одно за другим сразу без 8-секундной задержки.

Я вижу это только в Chrome и последней версии Firefox.

** РЕДАКТИРОВАТЬ: Я проверил с помощью console.log () и setTimeout возвращает одно и то же число до и после clearTimeout. Не знаю почему. Может, это тоже как-то связано? **

РЕДАКТИРОВАТЬ 2: Я добавил скрипку: http://jsfiddle.net/Rembrand/qHGAq/8/

Код выглядит примерно так:

spotlight: {
    i: 0,
   timeOutSpotlight: null,

   init: function()
   {
       $('#spotlight .controls a').click(function(e) {

           // do stuff here to count and move images

           // Don't follow the link
           e.preventDefault();

           // Clear timeout
           clearTimeout(spotlight.timeOutSpotlight);

           // Some stuff here to calculate next item

           // Call next spotlight in 8 seconds
           spotlight.timeOutSpotlight = setTimeout(function () {
                spotlight.animate(spotlight.i);
            }, 8000);
       });

       // Select first item
       $('#spotlight .controls a.next:first').trigger('click');
   },

   animate: function(i)
   {
       $('#spotlight .controls li:eq(' + (spotlight.i) + ') a.next').trigger('click');
   }
}

6
задан Community 23 May 2017 в 12:00
поделиться