JavaScript和Jquery动态加载Js文件和Css文件

JS动态加载CSS 在可换主题的界面中具有很重要的意义,用户可以根据自己的浏览习惯选择自己喜欢的页面显示方式,动态加载 CSS 的方法主要有三种,下面详细说明。如果你有很多关联的CSS文件要一起加载,或者想动态的加载不同的CSS文件,那么下面的方法你一定对你有帮助。

(1)使用JavaScript动态加载Js文件

  1. /*JavaScript动态加载Js文件*/ 
  2. var scriptNode = document.createElement('script'); 
  3. scriptNode.src = 'proxy.js?t='+new Date().getTime();/*附带时间参数,防止缓存*/ 
  4. document.head.appendChild(scriptNode); 

(2)使用JavaScript动态加载css文件

  1. /*JavaScript动态加载Css文件*/ 
  2. var cssNode = document.createElement('link'); 
  3. cssNode.rel = 'stylesheet'
  4. cssNode.type = 'text/css'
  5. cssNode.media = 'screen'
  6. cssNode.href = 'style.css?t='+new Date().getTime();/*附带时间参数,防止缓存*/ 
  7. document.head.appendChild(cssNode); 

(3)Jquery动态加载Js和Css扩展

  1. $.extend({ 
  2.      includePath: ''
  3.      include: function(file) { 
  4.         var files = typeof file == "string" ? [file]:file; 
  5.         for (var i = 0; i < files.length; i++) { 
  6.             var name = files[i].replace(/^\s|\s$/g, ""); 
  7.             var att = name.split('.'); 
  8.             var ext = att[att.length - 1].toLowerCase(); 
  9.             var isCSS = ext == "css"
  10.             var tag = isCSS ? "link" : "script"
  11.             var attr = isCSS ? " type='text/css' rel='stylesheet' " : " language='javascript' type='text/javascript' "
  12.             var link = (isCSS ? "href" : "src") + "='" + $.includePath + name + "'"
  13.             if ($(tag + "[" + link + "]").length == 0) document.write("<" + tag + attr + link + "></" + tag + ">"); 
  14.         } 
  15.    } 
  16. }); 

使用方法:

  1. $.include('http://www.daimajiayuan.com/include/dedeajax2.js'); 
  2. $.include('http://www.daimajiayuan.com/templets/skins/style/android.css'); 

或者:

  1. $.includePath='www.daimajiayuan.com/html/'
  2. $.include([dedeajax2.js','android.css']); 

转载请注明:代码家园 » JavaScript和Jquery动态加载Js文件和Css文件

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)