Показать сообщение отдельно
  #3 (permalink)  
Старый 09.09.2014, 07:55
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Во первых в своей функции ты пишешь:
var intervalId = setInterval (function(){...}// что означает локальную переменную, которая доступна внутри функции.

Далее ты вызываешь снова эту функцию передаешь флаг, и о чудо почему то не работает. А потому что
clearInterval(intervalId);//этот intervalId это уже другой, а не тот что ты запустил при прошлом вызове функции.


другими словами состояние setInterval хранить в глобальной переменной, например window['myInterval'] = setInterval...... и его уже останавливать и переопределять. Кстати советую в качестве флага передавать не строку а просто true Или false и проверять соответственно не на строку.
Ответить с цитированием