Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   как отобразить в окне значения счетчика во время выполнения цикла FOR (https://javascript.ru/forum/misc/1708-kak-otobrazit-v-okne-znacheniya-schetchika-vo-vremya-vypolneniya-cikla.html)

Алекс97 05.09.2008 14:18

как отобразить в окне значения счетчика во время выполнения цикла FOR
 
Собственно, сабж?
document.write, document.inner если сами находятся внутри цикла, то отображают значения ПОСЛЕ выхода из цикла, а мне нужно ВО ВРЕМЯ выполнения.
Такая простая вроде задача, а не могу ничего найти.
Смотрел примеры скриптов нашел только способ с timeOut
неужели это единственный способ решения?
В какую сторону копать?:confused:
Спасибо!

Snipe 05.09.2008 15:37

Почитайте про innerHTML

Андрей Параничев 05.09.2008 16:13

Да, изменения DOM происходят только по выходу из цикла. Единственное решение - отложенные итерации, или отложенное изменение DOM по таймауту.

Алекс97 06.09.2008 00:04

Цитата:

Сообщение от Андрей Параничев (Сообщение 5396)
Единственное решение - отложенные итерации, или отложенное изменение DOM по таймауту.

Про таймаут я все понял, а вот что такое "отложенные итерации"?
коротенько подсказать что это такое можете?
Буду очень Вам признателен :)
Спасибо!

Андрей Параничев 06.09.2008 00:56

Алекс97,
Это почти тоже самое. Вы можете либо выполнять все итерации цикла по таймауту:
setTimeout(function() {
     // ... код по изменению DOM ...
     if(/* условие продолжения */) setTimeout(arguments.callee, 1);
}, 1)


Либо только часть по изменению DOM выполнять по таймауту внутри цикла for, что часто легче.

Алекс97 06.09.2008 09:36

Цитата:

Сообщение от Андрей Параничев (Сообщение 5430)
Алекс97,
Это почти тоже самое. Вы можете либо выполнять все итерации цикла по таймауту:
setTimeout(function() {
     // ... код по изменению DOM ...
     if(/* условие продолжения */) setTimeout(arguments.callee, 1);
}, 1)


Либо только часть по изменению DOM выполнять по таймауту внутри цикла for, что часто легче.

Спасииибо)))
Будем проббовать! :)


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