Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как отследить окончание выполнения скрипта.... (https://javascript.ru/forum/misc/3265-kak-otsledit-okonchanie-vypolneniya-skripta.html)

Valentin Gvozdev 01.04.2009 22:50

Как отследить окончание выполнения скрипта....
 
Итак есть задача - на странице присутствует скрипт, загружаемый со стороннего сервера (js-kit.com), обеспечивающий возможность комментирования материалов. Подробно в нем я не разбирался (это 5000 строк), но, насколько я понимаю, делает он следующее - ищет в документе нужные div'ы (по специфическому className) и затем загружает с сервера информацию и, форматируя ее должным образом, заполняет их контентом (собственно комментарии, всякие кнопки, формы отправки итд - там много всего). Проблема в следующем - необходимо выполнить со страницей некие действия строго ПОСЛЕ выполнения этого мега-скрипта, когда все, что нужно уже заполнено и комментарии уже появились на странице.

Простейший вариант разместить код после него не прокатывает - он выполняется раньше загрузки комментариев и результат получается совсем не тот, что хотелось бы. Вообще, существует ли в JS какой-нибудь общий прием заставить что-то выполняться гарантированно после чего-то другого???

Gvozd 01.04.2009 23:28

в общем случае, без модификации кода "до", никак.
если можно модифицировать, то после выполнения пускай запускает функцию, которую мы передадим в качестве callback, до его запуска.
короче говоря получается система событие-обработчик события
в вашем случае, советовал бы запомнить состояние страницы до(а именно тот элемент, который модифицируется последним), и проверять состоянеие его каждые 0.1 секунды.
либо вызвать свой код например через 5 секунд(если их хватит конечно)

Valentin Gvozdev 02.04.2009 10:27

Спасибо.. Но в данном случае модифицировать скрипт вряд ли получится - он загружается со стороннего сервера.
Вариант ждать 5 секунд - то же не выход, ибо хотелось бы получить решеие, не зависящее от времени загрузки страницы и скорости соединения. Остается периодическая проверка состояния нужного элемента документа. Так что ее и попробую.

Gvozd 02.04.2009 11:03

пожалуйста

Kolyaj 02.04.2009 11:28

Gvozd,
а можешь не писать уже наконец эти пожалуйста? Надоело заходить в темы из-за них.

Gvozd 02.04.2009 13:03

Хорошо.
не буду, раз это мешает.

извиняюсь, за это тоже офтоповое сообщение


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