![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
Igor_K |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 166 Регистрация: 4.2.2008 Где: Kyiv Репутация: нет Всего: нет |
Здравствуйте!
Скрипт загружается нормально. Проблема в том, что alert(abcd) вызывается похоже когда file.js еще не загружен. Пишет abcd is not defined. Если вместо alert(abcd); записать setTimeout("alert(abcd)", 1000); то тогда алерт срабатывает. Из этого я сделал вывод, что алерт вызывается раньше чем скрипт file.js загрузится. Вопрос: Как мне "подождать" пока загрузится скрипт и только после этого начать выполнять следующие операторы? |
|||
|
||||
Amphiluke |
|
|||
![]() ☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 35 Всего: 112 |
Занесите все последующие действия в функцию. После кода динамического подключения скрипта поставьте вызов этой функции с короткой задержкой (скажем, 30 мс). Внутри функции проверяйте: если нужные данные из динамически подключаемого скрипта еще не доступны, то сгенерировать новый рекурсивный вызов этой функции с задержкой, а если данные доступны, то выполнить ожидающие операторы.
Выглядеть это может примерно так:
Вместо abcd можно (лучше) использовать какой-нибудь специальный флажок, который инициализируется ненулевым значением в самом конце динамически подключаемого сценария. |
|||
|
||||
TryLight |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 83 Регистрация: 26.8.2007 Репутация: нет Всего: 1 |
ну или вот еще решение
но не знаю, насколько валидно
Это сообщение отредактировал(а) TryLight - 26.11.2009, 10:37 |
||||
|
|||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |