Позвольте мне начать с проблемы: Chrome ведет себя странно при использовании setTimeout (), если пользователь меняет вкладки браузера, выполнение Javascript останавливается / приостанавливается. После того, как пользователь вернется обратно, Chrome хочет наверстать упущенное, поэтому анимация не учитывает тайм-аут и выходит из-под контроля.
Я пытаюсь запретить Chrome ускорять анимацию, если пользователь возвращается через некоторое время. В другом вопросе я обнаружил, что jQuery предлагает событие .blur & .focus, но, похоже, тоже не работает:
$(window).blur(function() {
clearTimeout(timer)
})
Есть ли способ остановить анимацию в тот момент, когда пользователь меняет вкладки, или нет события, которое запускается сразу после того, как пользователь меняет вкладки?