Comments 10
А почему не просто
function addScript(scr) {
if (!document.getElementById(src)){
script=document.createElement('script');
script.src=src;
script.id=src;
document.getElementsByTagName('head').appendChild(script);
}
}
?
Ну и куда хочешь это цепляешь...
function addScript(scr) {
if (!document.getElementById(src)){
script=document.createElement('script');
script.src=src;
script.id=src;
document.getElementsByTagName('head').appendChild(script);
}
}
?
Ну и куда хочешь это цепляешь...
По ссылке 404.
Подозреваю минус, поправьте если это не так:
"Классическим" способом браузер загрузил бы все *.js и, возможно, сохранил бы у себя в кеше, так что при следующем заходе ничего с сервера грузить не пришлось бы.
При использовании JSAN, как я понимаю, в кеш браузера ничего не попадает?
Подозреваю минус, поправьте если это не так:
"Классическим" способом браузер загрузил бы все *.js и, возможно, сохранил бы у себя в кеше, так что при следующем заходе ничего с сервера грузить не пришлось бы.
При использовании JSAN, как я понимаю, в кеш браузера ничего не попадает?
В случае с JSAN каждый XMLHttpRequest запрос также кешируется браузером, и в итоге трафика получается меньше чем с монолитным creating.js.
ЗЫ Насчет ссылки - попробуйте так http://habrahabr.ru/blog/javascript/4231…
ЗЫ Насчет ссылки - попробуйте так http://habrahabr.ru/blog/javascript/4231…
толи хабр, толи НЛО, но чтото меняет некоторые английские буквы в ссылках на русские:
должна выгляддеть так:
PS: блин, хабр ещё и ссылки преобразовывает в коде, хотя его об этом не просят.
<a href="http://habrahabr.ru/blog/javas%F1ri%F0t/42315.html#comments" title="http://habrahabr.ru/blog/javas%F1ri%F0t/42315.html#comments">http://habrahabr.ru/blog/javas%F1ri%F0t/…</a>
должна выгляддеть так:
<a href="http://habrahabr.ru/blog/javascript/42315.html#comments" title="http://habrahabr.ru/blog/javascript/42315.html#comments">http://habrahabr.ru/blog/javascript/4231…</a>
PS: блин, хабр ещё и ссылки преобразовывает в коде, хотя его об этом не просят.
как то тоже была необходимость загружать скрипт только по необходимости использования функции которую он определяет. Решение сделал такое:
Реализуется функция/обьект заглушка, которая знает в каком скрипте лежит полноценная функция/обьект. При первом обращении к этой заглушенной функции/обьекту, эта заглушка осуществляет синхронную или асинхронную загрузку (в зависимости от требований) скрипта, в котором определена оригинальная функция/обьект. После выполнения подгруженного скрипта - оригинальная функция перезатирает функцию заглушку, т.е. при повторном обращении закачка скрипта не осуществляется, а выполняется уже оригинальная функция. И все это было реализовано одним маленьким классом.
Реализуется функция/обьект заглушка, которая знает в каком скрипте лежит полноценная функция/обьект. При первом обращении к этой заглушенной функции/обьекту, эта заглушка осуществляет синхронную или асинхронную загрузку (в зависимости от требований) скрипта, в котором определена оригинальная функция/обьект. После выполнения подгруженного скрипта - оригинальная функция перезатирает функцию заглушку, т.е. при повторном обращении закачка скрипта не осуществляется, а выполняется уже оригинальная функция. И все это было реализовано одним маленьким классом.
>onclick="javascript: itemsCreating(this);
А метка-то здесь зачем?
>if(js == undefined) var js = {};
Странное условие...
> Первое что пришлось сделать, так это преобразовать вид старых функций... поскольку только так функции подгружались.
:)
А метка-то здесь зачем?
>if(js == undefined) var js = {};
Странное условие...
> Первое что пришлось сделать, так это преобразовать вид старых функций... поскольку только так функции подгружались.
:)
Насколько я помню, в JSAN для загрузки скриптов по требованию используется синхронный AJAX-запрос. А это есть зло.
Sign up to leave a comment.
Динамическая подгрузка Javascript