Как очищать все возможные интервалы созданные setInterval
Сделал моргающую закладку для привлечения внимания к новым сообщениям. Но не могу решить одну проблему. Таймер поступления сообщений установлен на 5 минут и стОит пропустить хоть одно уведомление о поступлении сообщений, как сразу перестает действовать clearInterval. Мне думается потому, что возникает несколько интервалов, а уничтожается только последний. Отсюда вопрос: как гарантированно убить все интервалы? Пробовал и перебором в цикле и по-всякому. Подскажите, если не трудно. Спасибо!
Пока убиваю интервал так window.onfocus = function() { clearInterval(interval); document.title = oldTitle; }; |
maiskiykot,
что мешает очищать интервал перед назначением нового? |
Цитата:
|
maiskiykot,
переменную interval сделайте глобальной |
Если задаю переменную window.interval - вообще перестает работать.
|
maiskiykot, ты бы хоть пример какой тестовый сделал...
|
Цитата:
var isOldTitle = true; var oldTitle = "Old"; var newTitle = "New"; var interval = null; function changeTitle() { document.title = isOldTitle ? oldTitle : newTitle; isOldTitle = !isOldTitle; } interval = setInterval(changeTitle, 1000); window.onfocus = function() { for (var i = 1;i < 99999;i++) { clearInterval(i); } document.title = oldTitle; }; |
... подожду телепатов.
|
Так я уже все выложил - всю функцию
|
maiskiykot,
не могу ничего посоветовать, возможно вы что-то не договариваите. |
Часовой пояс GMT +3, время: 23:56. |