日本一卡精品视频免费丨国产午夜片无码区在线播放丨国产精品成人久久久久久久丨国产亚洲日韩av在线播放不卡丨亚洲日韩av无码

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

2016/8/25 9:11:20   閱讀:1653    發布者:1653
一個簡單的動態加載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   
主站蜘蛛池模板: 天天摸日日添狠狠添婷婷| 午夜男人影院| 强奷漂亮人妻系列老师| 无码国产精品一区二区免费i6| 伊人色综合久久天天| 亚洲最大成人av在线天堂网| 一个人在线观看免费中文www| 久久人搡人人玩人妻精品首页 | 大肉大捧一进一出好爽动态图| 国产亚洲精品久久久久婷婷图片| 五月天婷婷激情网| 中文在线天堂网www| 国产人人看| 日日噜狠狠噜天天噜av| 经典一区二区| 人妻丰满av无码久久不卡| 免费观看又色又爽又黄的崩锅| 无码毛片一区二区三区本码视频| 久久精品无码免费不卡| 成人性生交大片免费看r视频| 国产av人人夜夜澡人人爽| 久久精品人人做人人爱爱| 狠狠色综合激情丁香五月| 激情总合网| 久久r精品国产99久久6不卡| 国产偷国产偷亚洲清高动态图 | 亚洲人成网站18禁止人| 精品少妇无码一区二区三批 | 日本三级香港三级人妇99| 学生妹亚洲一区二区| 国内精品美女a∨在线播放| 西西人体大胆午夜啪啪| 亚洲娇小与黑人巨大交| 麻豆性生活| 久久av一区二区三区| 日韩a∨精品日韩在线观看| 苍井空浴缸大战猛男120分钟 | 99久无码中文字幕一本久道|