Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   глюки с setTimeout или ошибки кода? (https://javascript.ru/forum/misc/16002-glyuki-s-settimeout-ili-oshibki-koda.html)

igor04 22.03.2011 20:05

глюки с setTimeout или ошибки кода?
 
var imageOnload = function ()
	{
	var date = new Date();
	var time = date.getTime();
	//alert(startTime<=time):help: 
	if(startTime<=time)//startTime внешняя переменная типа time +100
	   {
	   $('#imageId').attr('src', image.src);			
	   $('#imageId').animate({opacity: 1}, 1000);
	   }
	else 
	   {
           setTimeout(imageOnload(),100);
           }
		
	}

почему данный метод работает некорректно при отсутствии alert (), а когда он есть все ок)

Aetae 22.03.2011 23:00

setTimeout(imageOnload,100);

dmitriymar 23.03.2011 01:06

Цитата:

Сообщение от igor04
setTimeout(imageOnload(),100);

работает и со скобками
сам скрипт бред. если время +100 меньше времени сейчас-условие никогда не выполниться.
а алерт всего "морозит" выполнение скрипта вот реальное время и успевает обогнать-код ведь явно изменён чуть для выкладки здесь

igor04 23.03.2011 09:45

скобки стояли для нормальной передачи this.
а условие по идее должна выполняться, поскольку startTime это внешняя переменная и в методе она никак не меняется в отличие от time который увеличивается с шагом 100 мс.:-?

Kolyaj 23.03.2011 10:10

Цитата:

Сообщение от igor04
скобки стояли для нормальной передачи this.

А зачем вам setTimeout тогда, если вы функцию вызываете сразу же?

igor04 23.03.2011 10:24

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

Kolyaj 23.03.2011 10:42

Скобки вызывают функцию, вы сначала вызываете функцию, потом результат её работы передаёте в setTimeout.

igor04 23.03.2011 12:49

метод должен вызывать сам себя через определенное время до тех пор пока условие не станет true. больше я от него ничего не требую.

dmitriymar 23.03.2011 15:23

Цитата:

Сообщение от igor04
больше я от него ничего не требую.

от кого ?от нас?:nono:
или от скрипта?:D- если со скриптом метод кнута не помогает -попробуй к нему метод пряника применить:yes:

igor04 23.03.2011 16:03

Цитата:

Сообщение от dmitriymar (Сообщение 97729)
от кого ?от нас?:nono:
или от скрипта?:D

мне кажется я понятно написал:-E , а просто писать чтобы писалось я думаю нет никакого смысла!


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