У меня есть таймер, который отсчитывает каждую секунду. Он отлично работает, пока пользователь не откроет 3 или 4 вкладки моего сайта, после чего таймер самой новой вкладки удваивается или утраивается. В настоящее время я могу воспроизвести ошибку только в IE8. Раньше я использовал setInterval и мог воспроизвести ошибку и в Firefox.
На самом деле я использую FBJS (Facebook Javascript), поэтому просто приведу псевдокод.
function countDown() {
...
setTimeout(function() { countDown() }, 1000);
}
countDown();
Однако то, что я действительно ищу, более теоретическое. Я знаю, что браузеры могут попытаться «догнать» setInterval, но как несколько вкладок могут вызвать такое поведение для setTimeout?