Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   вопрос про сеттаймаут (https://javascript.ru/forum/dom-window/11205-vopros-pro-settajjmaut.html)

hoid 12.08.2010 17:56

вопрос про сеттаймаут
 
setTimeout( "if($('#'+curId+'_cont').css('display')=='block') $('#'+curId+'_cont').css('display','');",3000);)
этот код работал

while ($('#'+curId+'_cont').height()<toHeight) var intId = setInterval('$(\'#\'+curId+\'_cont\').height($(\'#\'+curId+\'_cont\').height()+10);',5000)
этот код не работал - ff выдавал запрос на остановку джкуеирскового сценария

while ($('#'+curId+'_cont').height()>0) var intId = setInterval('$(\'#\'+curId+\'_cont\').height($(\'#\'+curId+\'_cont\').height()-10);',5000);
этот код был в скрипте одновраеменно со вторым, так что точно сказать из какого была ошибка не могу

еще один сеттаймаут пробовал и тоже извне переменную передавал - дебагер сказал что она андефайнед

Объясните пожалуйста как правильно пользоваться таймаутом и интервалом.

Kolyaj 12.08.2010 18:01

setTimeout(function() {
    // Выполняемые действия.
}, 5000)

hoid 12.08.2010 19:29

setTimeout('alert("прошла секунда")', 1000)


При указании строки кода - интерпретатор динамически создает анонимную функцию с телом из данной строки. Но более правильным считается объявление функции в явном виде, например так:

Пробовал вручную function прописывать - все равно ff прерывает джкуеревский сценарий..

hoid 12.08.2010 19:57

понял, что с таймаутом, первый параметр не успевает выпониться как делается сет другого таймаута в ту же переменную

ff выдает это
Сценарий, исполняемый на этой странице, возможно занят или не отвечает. Вы можете остановить его сейчас или продолжить и посмотреть сможет ли он завершить свою работу.

очередь получается днинная, в моем коде совок
мне анимацию надо сделать, по некоторым причинам джкуеривские функции лагают - разные функции по разным причинам
анимейт - почему-то после плавного скрытия дива, снова ему дисплей блок ставит
слайдтоггл - некорректно работает в ие7, часть контента внутри дива пропадает как буд-то ему висибилити в хиден поставили(этого на самом деле нет), там надо дисплею пусто ставить, но поправить джкуери я не в силах
могу конечно сделать циклом анимацию, но его придется 999 раз из 1000 в холостую пускать
может подскажете как через таймаут?


Часовой пояс GMT +3, время: 20:26.