動態(tài)加載JavaScript文件的3種方式
以下是遇到的幾種動態(tài)加載JavaScript文件的方式,持續(xù)更新中。。。
一、使用document.write/writeln()方式
該種方式可以實現(xiàn)js文件的動態(tài)加載,原理就是在重寫文檔流,這種方式會導致整個頁面重繪。
實現(xiàn)方式:
需要注意的是特殊字符的轉(zhuǎn)義。
二、使用jQuery
使用getScript(url,callback)方法實現(xiàn)動態(tài)加載js文件
$.getScript('test.js',function(){
alert('done');
});
三、使用原生js方法
原理:動態(tài)創(chuàng)建script標簽,并指定script的src屬性
function loadJs(url,callback){
var script=document.createElement('script');
script.type="text/javascript";
if(typeof(callback)!="undefined"){
if(script.readyState){
script.onreadystatechange=function(){
if(script.readyState == "loaded" || script.readyState == "complete"){
script.onreadystatechange=null;
callback();
}
}
}else{
script.onload=function(){
callback();
}
}
}
script.src=url;
document.body.appendChild(script);
}
loadJs("test.js",function(){
alert('done');
});
還可以使用同樣的原理動態(tài)加載css文件,只不過插入的的父節(jié)點是head標簽。
以上就是動態(tài)加載JavaScript文件的方法,希望對大家的學習有所幫助。
相關(guān)文章
Javascript類型系統(tǒng)之undefined和null淺析
這篇文章主要介紹了Javascript類型系統(tǒng)之undefined和null的知識,通過本文還簡單給大家介紹了javascript中null和undefined的區(qū)別的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-07-07
Javascript中toFixed計算錯誤(依賴銀行家舍入法的缺陷)解決方法
這篇文章主要介紹了Javascript中toFixed計算錯誤(依賴銀行家舍入法的缺陷)解決方法,非常具有實用價值,需要的朋友可以參考下2017-08-08

