![]() |
Модераторы: Sardar, Aliance |
![]() ![]() ![]() |
|
Kotakota |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 14.12.2010 Репутация: нет Всего: нет |
Привет всем!
Уже который день ломаю голову над следующей задачей.
Этот код должен ПОСЛЕДОВАТЕЛЬНО (как раз то, чего он почему то не делает!), обрабатывать каждый массив объектов и динамически подключать файлы из него. На действие onload каждого файла, вешается событие, которое повторно запускает функцию обработки массива для подключения следующих файлов. Если файлов в массиве больше нет, то вызывается callback. Запустим этот скрипт, получаем:
Видим, что файлы подключились не последовательно, как должны были, а как попало! Некоторые, например 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js', вообще не подключились! Кроме того, выполнился всего один callback - alert('All second callback loaded '); А теперь что меня больше всего удивило в этом!!! Немного изменим код, добавим alert:
Запускаем! Что мы видим: <body> <script src="loadScripts.js" type="text/javascript"> <script src="test2.js"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"> <script src="test1.js"> <script src="test3.js"> <script src="test4.js"> </body> Все запустилось отлично и все callback выполнились! А теперь вопрос знатокам! Почему так произошло и alert сыграл такую существенную роль? Может необходима задержка перед подключением скриптов? Или другие варианты? |
||||||
|
|||||||
нуп |
|
|||
![]() Ботокодер ![]() ![]() Профиль Группа: Участник Сообщений: 987 Регистрация: 22.6.2009 Где: Кременчуг Репутация: 13 Всего: 33 |
Я использую headJS для подгрузки скриптов. http://y3x.ru/2011/04/resource-loaders/
|
|||
|
||||
Kotakota |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 14.12.2010 Репутация: нет Всего: нет |
Спасибо конечно, но хочу написать свой dynamic loader! |
|||
|
||||
![]() ![]() ![]() |
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |