|
|
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
С помощью Ajax в контейнер DIV загружается xHTML код. Перед тем, как отправить Ajax запрос на сервер я загружаю в head страницы js файл следующим отбразом: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Этот погружаемый js файл содержит функцию doStart(). Когда Ajax запрос возвращается клиенту я вставляю полученный HTML код в контейнер DIV и вызываю функцию doStart(). Код: plaintext 1. Все целиком выглядит вот так(использую библиотеку Д. Котерова): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. В большинстве случаев все работает нормально, но в некоторых ничего кроме "Загрузка" не отображается... Возможно функция doStart() не вызывается или вызывается до того как контейнер DIV наполнится необходимым JS. Подскажите пожалуйста в чем может быть причина. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2007, 15:30 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
Опечатка: до того как контейнер DIV наполнится необходимым HTML ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2007, 15:32 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
На req полезно весить ещё и onerror. А то ошибки просто съедаются, как сейчас. readyState в этих случаях достигает 4? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.07.2007, 18:09 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
LINUXERНа req полезно весить ещё и onerror. А то ошибки просто съедаются, как сейчас. Спасибо, надо будет почитать как это делается. LINUXER readyState в этих случаях достигает 4? К сожалнию сам я не могу промоделировать ситуацию - так бы я втавил alert Код: plaintext 1. 2. 3. 4. 5. 6. Почему-то кажется что дело в том, что погружаемый JS файл не подгружается до конца и функции doStart(); нечего вызывать. Как можно проверить полностью ли загрузился JS файл? (В одном из случаев у человека даже и CSS файл прописанный прямо в HTML не подгружался) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2007, 10:33 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
Alex_BBBВ большинстве случаев все работает нормально, но в некоторых ничего кроме "Загрузка" не отображается... раз так, то content.innerHTML = req.responseText; уже не выполняется (я так понимаю в ответе не может быть "Загрузка") Alex_BBB Как можно проверить полностью ли загрузился JS файл? для оперы и ИЕ можно смотреть s.readyState (его значения, кажется разные для браузеров) для оперы и ФФ можно назначить s.onload для ИЕ можно назначить s.onreadystatechange Можно замутить что-нибудь с typeof(doStart) т е если он вернёт "undefined", то функция ещё не загрузилась ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2007, 11:23 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
LINUXER Alex_BBBВ большинстве случаев все работает нормально, но в некоторых ничего кроме "Загрузка" не отображается... раз так, то content.innerHTML = req.responseText; уже не выполняется (я так понимаю в ответе не может быть "Загрузка") Да, точно... А в чем может быть причина? Ни у кого такого не было? А как "на req весить ещё и onerror": Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2007, 12:01 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
Используйте Prototype 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2007, 12:52 |
|
||
|
Подгрузка js файла и Ajax
|
|||
|---|---|---|---|
|
#18+
Хрюхрюшкин.Используйте Prototype 1.5 Спасибо за совет, а есть где-нибудь хорошое описание для начинающих на русском? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2007, 13:25 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=34637603&tid=1458025]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 15ms |
| total: | 168ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...