九九热线视频精品99-动漫高h纯肉无码视频在线观看-午夜理论无码片在线观看免费-99精品国产在热久久无码-亚洲国产成人乱码

DIV里如何動態加載js和css的jquery plugin

2016/8/25 9:11:20   閱讀:1647    發布者:1647
一個簡單的動態加載js和css的jquery代碼,用于在生成頁面時通過js函數加載一些共通的js和css文件。 
  1. //how to use the function below:  
  2. //$.include(’file/ajaxa.js’);$.include(’file/ajaxa.css’);  
  3. //or $.includePath  = ’file/’;$.include([’ajaxa.js’,’ajaxa.css’]);(only if .js and .css files are in the same directory)  
  4. $.extend({  
  5.     includePath: ’’,  
  6.     include: function(file)  
  7.     {  
  8.         var files = typeof file == "string" ? [file] : file;  
  9.         for (var i = 0; i < files.length; i++)  
  10.         {  
  11.             var name = files[i].replace(/^\s|\s$/g, "");  
  12.             var att = name.split(’.’);  
  13.             var ext = att[att.length - 1].toLowerCase();  
  14.             var isCSS = ext == "css";  
  15.             var tag = isCSS ? "link" : "script";  
  16.             var attr = isCSS ? " type=’text/css’ rel=’stylesheet’ " : " type=’text/javascript’ ";  
  17.             var link = (isCSS ? "href" : "src") + "=’" + $.includePath + name + "’";  
  18.             if ($(tag + "[" + link + "]").length == 0) $("head").prepend("<" + tag + attr + link + "></" + tag + ">");  
  19.         }  
  20.     }  
  21. });  
  22. $.include(’../js/jquery-ui-1.8.21.custom.min.js’);  
  23. $.include(’../css/black-tie/jquery-ui-1.8.21.custom.css’);  

將該函數寫入一個common.js文件中,在html中加載該common.js文件,就可以達到目的。該js函數出自以下鏈接: 
http://www.cnblogs.com/chenjinfa/archive/2009/03/17/1414178.html 
注意: 
1.在html5中,<script>標簽已經不支持language屬性了,所以我刪除了: 
  1. var attr = isCSS ? " type=’text/css’ rel=’stylesheet’ " : " language=’javascript’ type=’text/javascript’ ";  

中的language=’javascript’ 
2.原作者在寫入js和css標簽時,用的是: 
Java代碼  
  1. document.write("<" + tag + attr + link + "></" + tag + ">");  

但是經過實踐,發現document.write()方法會在寫入前清除原頁面的所有內容,也就相當于覆蓋的意思,
這樣明顯達不到我的需要,我需要在加載頁面時動態的向頁面導入共通的js和css,
而不能清除我原頁面的其他任何內容,所以查了下api,我改用了: 
Java代碼  
  1. $("head").prepend("<" + tag + attr + link + "></" + tag + ">");  

這個方法,$("head").prepend()方法的作用是在<head>標簽的最前端追加寫入內容。 

最后,再補充一個方法,也是通過共通js來實現,應該比上面這個方法更容易理解: 
  1. Dynamically loading external JavaScript and CSS files   
  2.   
  3. To load a .js or .css file dynamically, in a nutshell, it means using DOM 
    methods to first create a swanky new "SCRIPT" or "LINK" element, 
  4. assign it the appropriate attributes, and finally, use element.appendChild() 
  5. to add the element to the desired location within the document tree.
  6.  It sounds a lot more fancy than it really is. Lets see how it all comes together:   
  7.   
  8. function loadjscssfile(filename, filetype){   
  9. if (filetype=="js"){ //if filename is a external JavaScript file   
  10.   var fileref=document.createElement(’script’)   
  11.   fileref.setAttribute("type","text/javascript")   
  12.   fileref.setAttribute("src", filename)   
  13. }   
  14. else if (filetype=="css"){ //if filename is an external CSS file   
  15.   var fileref=document.createElement("link")   
  16.   fileref.setAttribute("rel", "stylesheet")   
  17.   fileref.setAttribute("type", "text/css")   
  18.   fileref.setAttribute("href", filename)   
  19. }   
  20. if (typeof fileref!="undefined")   
  21.   document.getElementsByTagName("head")[0].appendChild(fileref)   
  22. }   
  23.   
  24. loadjscssfile("myscript.js", "js") //dynamically load and add this .js file   
  25. loadjscssfile("javascript.php", "js") //dynamically load "javascript.php" as a JavaScript file   
  26. loadjscssfile("mystyle.css", "css") ////dynamically load and add this .css file   
主站蜘蛛池模板: 制服丝袜中文字幕在线| 欧美日韩无线码在线观看| 精彩国产萝视频在线| 无码粉嫩虎白一线天在线观看| 日日摸日日碰夜夜爽av| 一本一道久久a久久精品综合| 亚洲大乳高潮日本专区| 国产精品美女久久久久久2018| 在线天堂资源www| 色欲色香天天天综合网站| 亚洲6080yy久久无码产自国产 | 正在播放国产对白孕妇作爱| 国产午夜精品一区二区三区不卡| 日本一区二区三区精品福利视频| 国产成人av综合色 | 欧美熟妇另类久久久久久多毛| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 亚洲精品久久久久一区二区三区| 国产成人无码精品久久久小说 | 亚州性无码不卡免费视频| 两口子交换真实刺激高潮| 国产成人精品a视频免费福利| 日日躁夜夜躁狠狠躁超碰97| 无码高潮又爽又黄a片软件| 麻豆果冻传媒2021精品传媒一区 | 少妇spa推油被扣高潮| 天堂8中文在线最新版在线| 制服丝袜人妻有码无码中文字幕 | 国产超碰97人人做人人爱| 狠狠色狠狠色综合久久蜜芽| 国产福利男女xx00视频| 欧美又大粗又爽又黄大片视频 | 久久国内精品自在自线400部| 色拍拍在线精品视频| 无码一区二区三区免费| 欧美成人精品午夜免费影视| 国产成人精品综合在线观看 | 国产成人综合亚洲色就色| 精品免费一区二区三区在| 野外性史欧美k8播放| 亚洲欧美一区久久牛牛|