JS: подключаем произвольный ресурс

Nov 02, 2009 17:05

Сегодня столкнулся с такой интересной задачкой. Нужно с помощью JS подключить CSS-файл. Для решения этой задачи я нашел такой способ:

function loadjscssfile (filename, filetype) {
if (filetype=="js"){
var fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript")
fileref.setAttribute("src", filename)
}
else if (filetype=="css"){
var fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet")
fileref.setAttribute("type", "text/css")
fileref.setAttribute("href", filename)
}
if (typeof fileref!="undefined")
document.getElementsByTagName("head")[0].appendChild(fileref)
} на вход этой функции можно подавать:
filename - имя файла
filetype - тип ресурса (js\css)

На удивление удобное и лаконичное решение.

Нашел тут:
http://www.javascriptkit.com/javatutors/loadjavascriptcss.shtml
там, кстати, есть еще решение для контроля того, какие файлы уже загружены и еще есть решение для динамической замены ресурса:
http://www.javascriptkit.com/javatutors/loadjavascriptcss2.shtml

C другой стороны, можно не мутить хитрое решение, а просто собрать строку и записать ее в innerHTML следом за всем остальным содержимым. Но это будет уже не так интересно.

head, js, css, link, addcss, addjs, javascript

Previous post Next post
Up