Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Какой есть обработчик событий, который будет запускаться после выполнения всего кода? (https://javascript.ru/forum/jquery/22961-kakojj-est-obrabotchik-sobytijj-kotoryjj-budet-zapuskatsya-posle-vypolneniya-vsego-koda.html)

KamalovRadik 07.11.2011 16:10

Какой есть обработчик событий, который будет запускаться после выполнения всего кода?
 
Мне необходимо, чтобы код программы выполнился несколько раз.
но не перезагружая страницу.
В этом обработчике надо сделать проверку, которая скажет выполнять заново весь код или нет.

ksa 07.11.2011 16:38

KamalovRadik, начинай мастерить тестовый пример... ;)

KamalovRadik 07.11.2011 17:24

Я думал использовать setInterval
Но как я узнаю, сколько времени выполнялся код?

Serg_pnz 07.11.2011 17:28

Например, записав в куку дату последнего успешного выполнения кода.

DjDiablo 07.11.2011 18:27

Нет, не было, и не будет такого обработчика. Решение чтобы код выполнялся несколько раз, давным давно уже найдено - ЭТО ФУНКЦИИ :)

А для того чтобы проверить что сейчас происходит, существуют флаги. Пока флаг TRUE код выполнять второй раз нельзя. Соответсвенно флаг устанавливаешь в начале кода, а снимаешь в конце. Впрочем язык однопоточный, и так нефига не случится. Если хочешь уберечьшся ещё и от перезапуска страницы юзай куки.

Если есть куча таймеров и ты хочешь чтобы что-то сработало когда последний таймер остановится. Тогда заведи счётчик который будет увеличиваться при инициализации таймера и уменьшаться в последнем вызове таймера. Здесь же вызывай метод, который бедет проверять равен ли счётчик нулю, если да то делай то что хотел сделать в конце.

и милион других фишек можно выдумать

Опиши проблему подробно, и получишь нормальный ответ.

trikadin 07.11.2011 18:34

Цитата:

Сообщение от Serg_pnz
Например, записав в куку дату последнего успешного выполнения кода.

Мёсье знает толк в извращениях)

Цитата:

Сообщение от KamalovRadik
В этом обработчике надо сделать проверку, которая скажет выполнять заново весь код или нет.

Так сделайте. Она делается обычным if'ом.

Serg_pnz 07.11.2011 21:17

trikadin,
Ну спросили же "Но как я узнаю, сколько времени выполнялся код?" - Я и ответил :write:

На ум пришло такое "богатое" слово - рекурсия. Прячем IF внутри и как бы то, что требуется. Да?

trikadin 07.11.2011 21:21

Цитата:

Сообщение от Serg_pnz
Прячем IF внутри и как бы то, что требуется. Да?

Что?

DjDiablo 07.11.2011 21:33

Цитата:

Сообщение от trikadin (Сообщение 135058)
Прячем IF внутри и как бы то, что требуется. Да?

Присоеденяюсь к вопросу.
Чего чего ? :)

KamalovRadik 07.11.2011 23:25

Да, рекурсия вполне подходит. Спасибо


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