- /**
- * 生成命名空间
- * @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 加载成后执行的方法
- * @param {function} faultFN 加载失败后执行的方法
- * @return {boolean} 返回是否已经加载过
- * Msw.util.ajaxJS.load(url, resultFN, faultFN);
- *
- * @param {String} url 要加载的JS文件
- * @return {boolean} 返回是否已经加载过
- * 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);
- }
- };
- }();
- //该片段来自于http://www.codesnippet.cn/detail/261220138268.html
来源: http://www.codesnippet.cn/detail/261220138268.html