Динамическая загрузка JavaScript файлов
Декабрь 4, 2008
Не знаю, может это всем давно известно и тривиально, а может кому-то еще пригодится.
Собственно такая функция загружает JavaScript файл и после удачной загрузки вызывает функцию callback.
function addScript(src, callback) {
var head = document.getElementsByTagName("head")[0];
var script = document.createElement("script");
script.type = "text/javascript";
head.appendChild(script);
script.src = src;
// Normal browsers
script.onload = callback;
// IE
script.onreadystatechange = function() {
if(this.readyState == "loaded" || this.readyState == "complete") {
callback();
}
}
}
Пример использования:
addScript("http://job4it.net/informer/v0u0.5.0.js", ShowJob4ItData);
Литература:
Patrick Hunlock — Howto Dynamically Insert Javascript And CSS
P. S. Для меня самым сложным было сделать так чтобы работало в IE.
P. P. S. Описанный подход используется для “ленивой” загрузки баннеров на developers.org.ua

