Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.05.2011, 16:09
Интересующийся
Отправить личное сообщение для olejan Посмотреть профиль Найти все сообщения от olejan
 
Регистрация: 25.04.2011
Сообщений: 11

остановка выполнения setInterval
необходимо, чтобы выполнение setInterval заканчивалось через заданный промежуток времени или по достиженнии желаемого эффекта. Как это сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 16.05.2011, 16:24
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от olejan
или по достиженнии желаемого эффекта. Как это сделать?
Не использовать setInterval() и перейти на setTimeout()...
Ответить с цитированием
  #3 (permalink)  
Старый 16.05.2011, 16:34
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

var startTime = new Date().getTime(),
    intervalTimer = setInterval(function(){
        var currTime = new Date().getTime();
        if ( currTime - startTime > /* время через каторое должен остановиться скрипт */ || actionComplete ) {
           clearInterval ( intervalTimer );/* останавливаем setInterval */
        }
    }, /* ваш интервал */)
Ответить с цитированием
  #4 (permalink)  
Старый 16.05.2011, 16:54
Интересующийся
Отправить личное сообщение для olejan Посмотреть профиль Найти все сообщения от olejan
 
Регистрация: 25.04.2011
Сообщений: 11

спс ,сейчас попробуем
Ответить с цитированием
  #5 (permalink)  
Старый 16.05.2011, 17:08
Интересующийся
Отправить личное сообщение для olejan Посмотреть профиль Найти все сообщения от olejan
 
Регистрация: 25.04.2011
Сообщений: 11

функция все равно продолжает запускаться
Ответить с цитированием
  #6 (permalink)  
Старый 16.05.2011, 17:29
Интересующийся
Отправить личное сообщение для olejan Посмотреть профиль Найти все сообщения от olejan
 
Регистрация: 25.04.2011
Сообщений: 11

если использовать сет тайм аут ,то функция выполняется один раз и все,а если сет интервал то не могу ее остановить
Ответить с цитированием
  #7 (permalink)  
Старый 16.05.2011, 17:55
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

olejan,
setInterval выполняет код каждый н промежуток времени.если не возможно код выполнить(поток занят-возникает очень часто если интервалы между вызовами меньше времени действия кода) то выполнение ставиться в очередь . clearInterval сбросит setInterval ,но поставленные в очередь выполнения не отменит
Ответить с цитированием
  #8 (permalink)  
Старый 16.05.2011, 23:19
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от olejan
если использовать сет тайм аут ,то функция выполняется один раз и все
Это смотря как использовать... От тебя пока нет ни одного тестового примера. Что ты там делаешь мы не видим...
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переменный в setinterval не видно вне него zeraid Общие вопросы Javascript 12 13.04.2011 10:29
Остановка выполнения функции Woody jQuery 12 18.01.2011 13:00
setTimeout setInterval и др. mycoding Общие вопросы Javascript 6 28.10.2010 17:26
Остановка выполнения скрипта parzh-junior Элементы интерфейса 0 12.12.2009 13:58
Проблема в document.write при использовании setInterval() GOll Общие вопросы Javascript 21 06.10.2008 17:38