Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Подключение файлов JavaScript


Рекомендуемые сообщения

Пишу онлайн приложение.

Проблема в том, что все яваскрипты данного приложения весят болеет 1МБ, притом за один сеанс работы может использоваться только 5-10 функций из нескольких сотен.

Появилась идея подгружать функции по мере их необходимости.

В интернете нашел лишь следующее:

document.write('<script src="file.js"></script>')

Но document.write работает только до загрузки страницы, а мне надо после загрузки, по событию.

Так не работает:

document.body.innerHTML += '<script src="file.js"></script>';

ЗЫ: гарантировано что пользователи будут заходить только через IE6 или выше

Ссылка на комментарий
Поделиться на другие сайты

А пробувал...

document.open();

document.write()

document.close();

А насчеть InnerHTML, лучше через DOM (createElement, appendChild()), но и так не уверен что будеть работать.

Ссылка на комментарий
Поделиться на другие сайты

Darhazer: document.open(); вобщето очищает документ. Если ток все перезаписывать, но это не есть хорошо.

Насчет DOM то innerHTML это тоже конструкции DOM и следовательно не работает.

Вобще-то у меня появилась идея, которая пока работает, но насколько она рабочая?

Данные в моем приложении подгружаются в скрытом фрейме, который после полной загрузки передает содержимое тега body функции в родительском фрейме. Если в новой функции обработать полученые данные функцией eval() то все исполняется, функции добавляются. Но всегда ли будет это работать, есть ли какие либо конструкции, которые через eval() не проходят?

Ссылка на комментарий
Поделиться на другие сайты

Я имел ввиду так

var script = document.createElement('script');script.type = 'text/javascript';script.src = 'script.js';document.getElementsByTagName('head')[0].appendChild(script);

Ето на много лучше чем innerHTML += ... Должно работать, только можеть бит появиться проблем с асинхронном подключение и визов функции перед загрузки JS. Надо script.onload() добавить наверника

Еще можно почитать здесь

http://ajaxpatterns.org/On-Demand_Javascript

Изменено пользователем Darhazer
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...