動態(tài)加載javascript功能模塊
來源:易賢網(wǎng) 閱讀:810 次 日期:2015-03-18 11:44:03
溫馨提示:易賢網(wǎng)小編為您整理了“動態(tài)加載javascript功能模塊”,方便廣大網(wǎng)友查閱!

動態(tài)加載javascript功能模塊,具體代碼如下:

/**

* 生成命名空間

* @param {String} str 要生成的命名空間字符串

* 如果要生成com.google命名空間,就使用Msw.ns("com.google")

*/

if(!window.Msw) Msw = {};

Msw.ns = function(){

var ns=function(n, o){

if(n.length == 0) return;

if(!o[n[0]]) o[n[0]] = {};

ns(n.slice(1, n.length), o[n[0]]);

}

//str 要生成的命名空間字符串

return function(str){

if(typeof str != 'string' || str.length == 0) return;

str = str.split('.');

ns(str,window);

}

}();

Msw.ns('Msw.util');

/**

* 加載所指定的JS文件

* @param {String} url 要加載的JS文件

* @param {function} resultFN 加載成后執(zhí)行的方法

* @param {function} faultFN 加載失敗后執(zhí)行的方法

* @return {boolean} 返回是否已經(jīng)加載過

* Msw.util.ajaxJS.load(url, resultFN, faultFN);

*

* @param {String} url 要加載的JS文件

* @return {boolean} 返回是否已經(jīng)加載過

* Msw.util.ajaxJS.isLoad(url);

*/

Msw.util.ajaxJS = function(){

var jss, ajax, isLoad;

jss = []; //用于存儲加載成功的JS

ajax = function (url, resultFN, faultFN)

{

var xmlHttp;

var strInnerHTML;

try{

if(window.ActiveXObject){

xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

}else if(window.XMLHttpRequest){

xmlHttp = new XMLHttpRequest();

}

}catch(e){alert("暈");}

//xmlHttp.open("post",url,true);

xmlHttp.open("get",url,true);

//xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencode");

xmlHttp.onreadystatechange = function ()

{

if(xmlHttp.readyState == 4)

{

if(xmlHttp.status == 200){

!isLoad(url) && jss.push(url); //if(!isLoad(url)) jss.push(url);

resultFN(xmlHttp.responseText,xmlHttp);

}else{

faultFN(xmlHttp);

}

}

};

xmlHttp.send(null);

};

isLoad = function(url)

{

for(var i = 0; i < jss.length; i ++){

if(jss[i] == url){

return true;

}

}

return false;

};

return {

load: function(url, resultFN, faultFN){

if(url == null || url == "" || isLoad(url)) return true;

new ajax(url, resultFN, faultFN);

return false;

},

isLoad: function(url){

return isLoad(url);

}

};

}();

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
易賢網(wǎng)手機網(wǎng)站地址:動態(tài)加載javascript功能模塊

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網(wǎng)