русский
Germany.ruForen → Архив Досок→ Webdesign und Hosting

JQuery - загрузка

751  1 2 alle
Murr_0003 завсегдатай26.08.10 19:28
NEW 26.08.10 19:28 
Думал куда запостить - в программирование или к дизайнерам...
Тяжко выбрать - бо, вопрос скорее к программистам, чем дизайнерам, но дизайнеры с ним сталкиваются чаще...
Ситуация следующая.
Загружается страничка с инета.
В эту страничку принудительно вставляется ссылка на несколько внешних скриптов.
Один из скриптов - JQuery, второй - дополнительная функциональность для реализуемой задачи, использующая JQuery.
Поскольку скрипты вставляются в уже загруженную страницу, то автоматический ресолвинг по последовательности загрузки уже не работает - когда загрузится скрипт - тогда он и включится в работу.
Проблема - скрипт, использующий функциональность JQuery успевает оказаться запущенным раньше, чем загружается JQurey.
Кто в курсе как управлять порядком загрузки/запуска javascript'ов, загружаемых динамически, после загрузки страницы?
Знаю, что 100% решение есть в mshtml.IHTMHScriptElement_on...(), но возможно есть что-то в самих скриптах?
Ссылки на доки по проблеме вполне приветствуются.
#1 
Валидол свой человек26.08.10 20:59
NEW 26.08.10 20:59 
in Antwort Murr_0003 26.08.10 19:28
Порядок загрузки ХТМЛ, сверху вниз, ну это ты знаешь :). В твоем случае наверное поможет onLoad();
Вот "почти первая" ссылка из гугля http://www.php.ru/forum/viewtopic.php?t=26643&view=previous
...
PS, Наверное, потому что я уже ничему не верю
#2 
Murr_0003 завсегдатай26.08.10 21:35
NEW 26.08.10 21:35 
in Antwort Валидол 26.08.10 20:59
В твоем случае наверное поможет onLoad();
------
Window.OnLoad() - отрабатывает один раз и на момент втискивания моих скриптов он отработал.
Чего не понимаю - поведения при внешнем добвлении блока SCRIPT... Грузится - да, асинхронно - да. Но второго ОнЛоад быть не должно... у блока скрипта его вроде тоже нет...
#3 
project33 старожил26.08.10 23:18
project33
NEW 26.08.10 23:18 
in Antwort Murr_0003 26.08.10 19:28
возможно я что-то не понял, но если загрузка описана в хедере, а вызов идет из боди, то последовательность роли не играет
Продвижение сайтов, реклама: https://www.pro33.net
#4 
Murr_0003 завсегдатай26.08.10 23:43
26.08.10 23:43 
in Antwort project33 26.08.10 23:18
Да, вероятно не понял.
но если загрузка описана в хедере
------
Загрузка НЕ прописана в хедере. Загрузки вообще нет в документе. Вообще. НЕТУ.
Скрипты, оба, втискиваются в уже полностью загруженный документ. Мягко говоря - совершается акт варварского насилия над всеми мыслимыми запретами в системе безопастности - в загруженную странцу втискиваются дополнительные скрипты. Ну мне так надо.
а вызов идет из боди, то последовательность роли не играет
------
Вызов... ну можно сказать и вызов... На сейчас это простой ALERT:
$(document).ready( function() {alert('Hello!!! \r\n Inected!!!')} );
На момент его выполнения, т.е. непосредственно после инжектирования, необходимо иметь загруженный и работающий JQuery. Иногда случается что его еще нет. На медленных сетях это НЕТ будет всегда.
Мне нужна гарантия что JQuery будет иметься...
#5 
project33 старожил27.08.10 00:26
project33
NEW 27.08.10 00:26 
in Antwort Murr_0003 26.08.10 23:43
В ответ на:
Скрипты, оба, втискиваются в уже полностью загруженный документ.

как это реализовано, в какую часть документа?
Продвижение сайтов, реклама: https://www.pro33.net
#6 
compman посетитель27.08.10 00:56
compman
NEW 27.08.10 00:56 
in Antwort project33 27.08.10 00:26, Zuletzt geändert 27.08.10 00:58 (compman)
В Prototype есть замечательный The "dom:loaded" event
document.observe("dom:loaded", function() {
nasha_funkcija();
});
Исполняется после постройки дома :-) Обрабатывайте любой объект, как хотите. Загружайте, что хотите.
http://www.prototypejs.org/api/document/observe
#7 
Murr_0003 завсегдатай27.08.10 01:00
NEW 27.08.10 01:00 
in Antwort project33 27.08.10 00:26
как это реализовано,
-----
У меня свое приложение, использующее полностью контролируемый браусер... но можно и адд-оном или вообще сторонней задачей... не суть важно.
в какую часть документа?
------
Дочерним элементом в HEAD. Если в деталях - в конец списка дочерних элементов.
ЗЫ. С управлением загрузкой справился. Кому интересно - опишу завтра в Программировании - бо, совсем не Дизайн.
#8 
Murr_0003 завсегдатай27.08.10 01:03
NEW 27.08.10 01:03 
in Antwort Валидол 26.08.10 20:59
>> у блока скрипта его вроде тоже нет...
Был не прав - отрабатывает стандартный эвент onreadystatechange только именно для блока скрита.
#9 
voxel3d коренной житель27.08.10 01:10
voxel3d
NEW 27.08.10 01:10 
in Antwort Murr_0003 27.08.10 01:00, Zuletzt geändert 27.08.10 01:11 (voxel3d)
Да пишите уже где-то в одном месте, один хрен все заинтересованные лица читают нынче и дезигн и программирование.
Начало истории в топике в программировании?
Dropbox - средство синхронизации и бэкапа файлов.
#10 
voxel3d коренной житель27.08.10 01:16
voxel3d
NEW 27.08.10 01:16 
in Antwort voxel3d 27.08.10 01:10
Прочитал топ в программировании. Чувствую ересь.
Итак, у нас речь идёт о какой-то извращённой херне: браузере на основе интырнет эксплорера в клиентской программе и манипуляциями с отображаемым хтмл документом в нём же?
Dropbox - средство синхронизации и бэкапа файлов.
#11 
Murr_0003 завсегдатай27.08.10 01:41
NEW 27.08.10 01:41 
in Antwort voxel3d 27.08.10 01:10
заинтересованные лица читают нынче и дезигн и программирование
------
Да, но Дизайн в Дизайне, а Программирование в Програмировании.
Начало истории в топике в программировании?
-----
Начало - да, но данная часть - вполне самостоятельная - манипулирование HTML'ом для динамической загрузки скрипта.
#12 
Murr_0003 завсегдатай27.08.10 01:49
NEW 27.08.10 01:49 
in Antwort voxel3d 27.08.10 01:16
Чувствую ересь.
------
Она и есть. Сознаюсь целиком и полностью.
браузере на основе интырнет эксплорера в клиентской программе
------
Наоборот - об клиентской программе, реализованной на основе System.Windows.Forms.WebBrowser
От эксплорера как такового там совсем немного - загрузка и отображение. Остальное - контролируется
программой. Не думаю, что есть более простой способ получить нужную имплементацию.
и манипуляциями с отображаемым хтмл документом в нём же?
------
Это - да, в одном из используемых бровсеров.
#13 
voxel3d коренной житель27.08.10 01:56
voxel3d
NEW 27.08.10 01:56 
in Antwort Murr_0003 27.08.10 01:41
В ответ на:
Начало - да, но данная часть - вполне самостоятельная - манипулирование HTML'ом для динамической загрузки скрипта.

Нет, не самостоятельная. Непонятно, зачем оно надо, почему на стороне сервера не сформировать контент с жабоскриптами, где порядок их загрузки будет определён. Или, хотя бы, почему в документ не включить сразу жквери.
Dropbox - средство синхронизации и бэкапа файлов.
#14 
voxel3d коренной житель27.08.10 01:59
voxel3d
NEW 27.08.10 01:59 
in Antwort Murr_0003 27.08.10 01:49
В ответ на:
Не думаю, что есть более простой способ получить нужную имплементацию.

Имплементацию чего? Как задача вообще звучит?
Dropbox - средство синхронизации и бэкапа файлов.
#15 
Victor! посетитель27.08.10 02:05
Victor!
NEW 27.08.10 02:05 
in Antwort voxel3d 27.08.10 01:59
да, было бы очень интересно увидеть причину написания этих костылей
#16 
Murr_0003 постоялец27.08.10 02:23
NEW 27.08.10 02:23 
in Antwort voxel3d 27.08.10 01:56
почему на стороне сервера не сформировать контент с жабоскриптами
------
Потому как сервера - чужие.
Совсем чужие и просьбу включить что-то в контент там просто не поймут.
Или даже если в одном-двух-десяти - поймут, то где-то все одно не поймут.
В паре мест Я предлагал бесплатно помочь с проблемами - тоже не поняли.
Так что вариант один - получить тот контент который они отдадут, но отработать
с ним так как надо мне. Проще всего - добавить что нужно в закруженный
документ. Там не много - чуток текста да несколько кнопок на прозрачном
спрайте...
#17 
voxel3d коренной житель27.08.10 02:34
voxel3d
NEW 27.08.10 02:34 
in Antwort Murr_0003 27.08.10 02:23
Это бред. Если начальству нужна функциональность, вам дают задание, вы правите серверную часть, если начальству не надо ничего, вам не надо ничего делать.
Выглядит как никому ненужная инициатива.
Dropbox - средство синхронизации и бэкапа файлов.
#18 
Murr_0003 постоялец27.08.10 02:37
NEW 27.08.10 02:37 
in Antwort voxel3d 27.08.10 01:59
Как задача вообще звучит?
------
Я вроде не так давно писал - достало регулярно тратить время на просмотр объявлений об вакансиях:
- сплошные фог&смог, неправильно отфильтрованные (непрофильные) объявления, дублирование на разных ресурсах и т.п.
- трекинг текущей ситуации - аппликатионы, респонсы, шедулинг интервью и результаты
- блэк-листинг.
Убиваю по 1.5-2 часа в день на всю эту хрень и хочу сократить до 5-6 минут общего надзора за процессом.
#19 
Murr_0003 постоялец27.08.10 02:40
NEW 27.08.10 02:40 
in Antwort voxel3d 27.08.10 02:34
Выглядит как никому ненужная инициатива.
------
Ну не знаю, не знаю...
Моим побаливающим глазам эта инициатива ненужной не кажется...
Если начальству нужна функциональность
-----
Я тут сам себе начальник.
#20 
1 2 alle