動(dòng)態(tài)加載JavaScript文件的3種方式
以下是遇到的幾種動(dòng)態(tài)加載JavaScript文件的方式,持續(xù)更新中。。。
一、使用document.write/writeln()方式
該種方式可以實(shí)現(xiàn)js文件的動(dòng)態(tài)加載,原理就是在重寫文檔流,這種方式會(huì)導(dǎo)致整個(gè)頁(yè)面重繪。
實(shí)現(xiàn)方式:
需要注意的是特殊字符的轉(zhuǎn)義。
二、使用jQuery
使用getScript(url,callback)方法實(shí)現(xiàn)動(dòng)態(tài)加載js文件
$.getScript('test.js',function(){
alert('done');
});
三、使用原生js方法
原理:動(dòng)態(tài)創(chuàng)建script標(biāo)簽,并指定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');
});
還可以使用同樣的原理動(dòng)態(tài)加載css文件,只不過插入的的父節(jié)點(diǎn)是head標(biāo)簽。
以上就是動(dòng)態(tài)加載JavaScript文件的方法,希望對(duì)大家的學(xué)習(xí)有所幫助。
- 動(dòng)態(tài)加載JS文件的三種方法
- 使用jQuery動(dòng)態(tài)加載js腳本文件的方法
- jquery及js實(shí)現(xiàn)動(dòng)態(tài)加載js文件的方法
- jquery getScript動(dòng)態(tài)加載JS方法改進(jìn)詳解
- AngularJs根據(jù)訪問的頁(yè)面動(dòng)態(tài)加載Controller的解決方案
- JS 動(dòng)態(tài)加載腳本的4種方法
- 用ajax動(dòng)態(tài)加載需要的js文件
- javascript如何動(dòng)態(tài)加載表格與動(dòng)態(tài)添加表格行
- js 動(dòng)態(tài)加載事件的幾種方法總結(jié)
- 一個(gè)簡(jiǎn)單的動(dòng)態(tài)加載js和css的jquery代碼
相關(guān)文章
JS手機(jī)端touch事件計(jì)算滑動(dòng)距離的方法示例
這篇文章主要介紹了JS手機(jī)端touch事件計(jì)算滑動(dòng)距離的方法,結(jié)合實(shí)例形式分析了javascript響應(yīng)手機(jī)端屏幕上touch事件計(jì)算滑動(dòng)距離的相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
bootstrap側(cè)邊欄圓點(diǎn)導(dǎo)航
這篇文章主要為大家詳細(xì)介紹了bootstrap側(cè)邊欄圓點(diǎn)導(dǎo)航效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01
javascript 對(duì)象比較實(shí)現(xiàn)代碼
js對(duì)象比較實(shí)現(xiàn)代碼。2009-04-04
Javascript類型系統(tǒng)之undefined和null淺析
這篇文章主要介紹了Javascript類型系統(tǒng)之undefined和null的知識(shí),通過本文還簡(jiǎn)單給大家介紹了javascript中null和undefined的區(qū)別的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-07-07
微信小程序?qū)崿F(xiàn)卡片層疊滑動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)卡片層疊滑動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06
Javascript中toFixed計(jì)算錯(cuò)誤(依賴銀行家舍入法的缺陷)解決方法
這篇文章主要介紹了Javascript中toFixed計(jì)算錯(cuò)誤(依賴銀行家舍入法的缺陷)解決方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-08-08
微信小程序動(dòng)態(tài)顯示項(xiàng)目倒計(jì)時(shí)效果
這篇文章主要為大家詳細(xì)介紹了微信小程序動(dòng)態(tài)顯示項(xiàng)目倒計(jì)時(shí),格式如4天7小時(shí)58分鐘39秒,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06

