javascript实现动态加载CSS

代码如下:

<script type="text/javascript">

            function addStyle(stylePath) {

                var container = document.getElementsByTagName("head")[0];

                var addStyle = document.createElement("link");

                addStyle.rel = "stylesheet";

                addStyle.type = "text/css";

                addStyle.media = "screen";

                addStyle.href = stylePath;

                container.appendChild(addStyle);

            }

            addStyle('http://www.xxx.com/wintys/dynamic.css');

</script>

JS写的函数,用来控制JS文件的动态加载,也就是在需要的时候才加载JS文件,同时还可加载CSS文件,这样就可实现网页换肤,这觉得这个函数写的不错,认真的看下,自己在完善下,还是相当不错的。

代码如下:

function $import(path,type,title){ 

var s,i; 

if(!type) type=path.substr(path.lastIndexOf(".")+1); 

if(type=="js"){ 

    var ss=document.getElementsByTagName("script"); 

    for(i=0;i<ss.length;i++){ 

        if(ss[i].src && ss[i].src.indexOf(path)!=-1 || ss[i].title==title)return ss[i]; 

    } 

    s=document.createElement("script"); 

    s.type="text/javascript"; 

    s.src=path; 

    if(title) s.title=title; 

}

else if(type=="css"){ 

    var ls=document.getElementsByTagName("link"); 

    for(i=0;i<ls.length;i++){ 

        if(ls[i].href && ls[i].href.indexOf(path)!=-1 || ls[i].title==title)return ls[i]; 

    } 

    s=document.createElement("link"); 

    s.rel="stylesheet"; 

    s.type="text/css"; 

    s.href=path; 

    if(title) s.title=title; 

    s.disabled=false; 

} 

else return; 

var head=document.getElementsByTagName("head")[0]; 

head.appendChild(s); 

return s; 

}

相关推荐