Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.08.2019, 12:10
Интересующийся
Отправить личное сообщение для maiskiykot Посмотреть профиль Найти все сообщения от maiskiykot
 
Регистрация: 11.09.2018
Сообщений: 29

Как очищать все возможные интервалы созданные setInterval
Сделал моргающую закладку для привлечения внимания к новым сообщениям. Но не могу решить одну проблему. Таймер поступления сообщений установлен на 5 минут и стОит пропустить хоть одно уведомление о поступлении сообщений, как сразу перестает действовать clearInterval. Мне думается потому, что возникает несколько интервалов, а уничтожается только последний. Отсюда вопрос: как гарантированно убить все интервалы? Пробовал и перебором в цикле и по-всякому. Подскажите, если не трудно. Спасибо!

Пока убиваю интервал так
window.onfocus = function() { 
                   clearInterval(interval);
                   document.title = oldTitle;
                };

Последний раз редактировалось maiskiykot, 11.08.2019 в 12:17.
Ответить с цитированием
  #2 (permalink)  
Старый 11.08.2019, 13:54
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

maiskiykot,
что мешает очищать интервал перед назначением нового?
Ответить с цитированием
  #3 (permalink)  
Старый 11.08.2019, 16:24
Интересующийся
Отправить личное сообщение для maiskiykot Посмотреть профиль Найти все сообщения от maiskiykot
 
Регистрация: 11.09.2018
Сообщений: 29

Сообщение от рони Посмотреть сообщение
maiskiykot,
что мешает очищать интервал перед назначением нового?
Мешает то, что не работает. Я уже и так и эдак пробовал - не очищаются все интервалы.
Ответить с цитированием
  #4 (permalink)  
Старый 11.08.2019, 16:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

maiskiykot,
переменную interval сделайте глобальной
Ответить с цитированием
  #5 (permalink)  
Старый 12.08.2019, 15:10
Интересующийся
Отправить личное сообщение для maiskiykot Посмотреть профиль Найти все сообщения от maiskiykot
 
Регистрация: 11.09.2018
Сообщений: 29

Если задаю переменную window.interval - вообще перестает работать.
Ответить с цитированием
  #6 (permalink)  
Старый 12.08.2019, 15:39
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

maiskiykot, ты бы хоть пример какой тестовый сделал...
Ответить с цитированием
  #7 (permalink)  
Старый 12.08.2019, 16:07
Интересующийся
Отправить личное сообщение для maiskiykot Посмотреть профиль Найти все сообщения от maiskiykot
 
Регистрация: 11.09.2018
Сообщений: 29

Сообщение от ksa Посмотреть сообщение
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;
                };
Ответить с цитированием
  #8 (permalink)  
Старый 12.08.2019, 16:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

... подожду телепатов.
Ответить с цитированием
  #9 (permalink)  
Старый 12.08.2019, 18:07
Интересующийся
Отправить личное сообщение для maiskiykot Посмотреть профиль Найти все сообщения от maiskiykot
 
Регистрация: 11.09.2018
Сообщений: 29

Так я уже все выложил - всю функцию
Ответить с цитированием
  #10 (permalink)  
Старый 12.08.2019, 18:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

maiskiykot,
не могу ничего посоветовать, возможно вы что-то не договариваите.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как из html удалить все комментарии javascript(ом)? An1984tonn Сайт Javascript.ru 5 21.12.2016 09:29
Как перерисовать все элементы SVG на Canvas (d3.js+leaflet.js+html2canvas) Trippal Общие вопросы Javascript 0 10.02.2016 18:25
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как сделать все содержимое страницы не активным son313 jQuery 9 10.07.2013 16:58
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37