Как очищать все возможные интервалы созданные 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, время: 19:15. |