国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

用JS實現的一個include函數

2019-11-21 02:00:18
字體:
來源:轉載
供稿:網友
很多語言都有類似php中的include和require功能的函數,而唯獨javascript沒有。 
很早就想在js中實現類似的功能,嘗試了很多次都沒有成功,那天在google上搜索一些關于動態加載css文件的關鍵詞時,發現一個blog(地址找不到了)上的一個為網頁的head標簽增加link元素的函數,于是就改了一下,寫了這個函數。 

用法: 
include_js(src,[reload]); 
src: js文件的路徑名 
reload:可選參數,0或1,表示是否重復加載同一個url的js文件。 

說明: 
當包含的js文件中有document.write方法時,在IE下沒有反應,但在Mozilla Firefox 下就會讓你原來的網頁消失,只顯示document.write出來的內容:mad:  
嘿嘿,對于這個問題,我自然有妙招: 
就是重定義 document.write方法,讓他不顯示任何東西。具體做法: 
在 include_js 之前加上這句 
document.write = function () { return false;}
這樣,就算include過來的js文件含有document.write方法我們也不怕它破壞網頁了!:lol::lol: 

用途: 
本函數可以用于一些廣告和統計的js文件異步加載,避免了因加載js文件而造成的網頁顯示速度慢的問題。 

將此函數修改一下便可以動態加載css文件,不過用處就沒有加載js文件的大。 

復制代碼 代碼如下:

function include_js(path,reload)  
{  
       var scripts = document.getElementsByTagName("script");  
       if (!reload)  
       for (var i=0;i<scripts.length;i++)  
              if (scripts[i].src && scripts[i].src.toLowerCase() == path.toLowerCase() ) return;  
       var sobj = document.createElement('script');  
       sobj.type = "text/javascript";  
       sobj.src = path;  
       var headobj = document.getElementsByTagName('head')[0];  
       headobj.appendChild(sobj);  
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台南市| 潞西市| 卓尼县| 弋阳县| 桐庐县| 上蔡县| 望江县| 青铜峡市| 泾源县| 永城市| 聂拉木县| 昌平区| 萍乡市| 阳泉市| 出国| 铜川市| 阆中市| 仪陇县| 鹤峰县| 镇康县| 汝南县| 凤翔县| 新宾| 颍上县| 仁寿县| 蒲城县| 曲松县| 金平| 军事| 青龙| 新竹县| 合山市| 甘孜县| 嘉兴市| 河间市| 大方县| 搜索| 塔城市| 永州市| 教育| 米脂县|