//需要按需加载的内部文件列表映射
mis.classFiles = {
'AjaxEvent': 'includes/ajax.lib.js',
'AjaxRequest': 'includes/request.lib.js',
'colorFade': 'includes/effects.lib.js'
}
//标记已经include的内部文件
mis.includedFiles = {};
//对内的文件加载
mis.include = function(classname,callback){
if(mis.includedFiles[classname]){
callback && callback();
return true;
}else if(mis.classFiles[classname]){
return mis.loadJavaScript(mis.classFiles[classname],callback);
}else{
return false;
}
}
//标记已经load的内部和外部文件
mis.loadedJavaScript = {}
//无限制的加载file文件
mis.loadJavaScript = function(file,callback){
callback = callback || function(){};
if(mis.loadedJavaScript[file]){
callback(true);
return true;
}else{
var head = document.getElementsByTagName("head")[0];
var script = head.appendChild(document.createElement("script"));
script.onload = script.onreadystatechange = function(){
if((!/*@cc_on!@*/0) || (/loaded|complete/).test(script.readyState)){
script.onreadystatechange = null;
mis.loadedJavaScript[file] = true;
callback(true);
}
}
script.src = file;
return true;
}
}
原文:http://www.ilovejs.net/archives/1545
转载于:https://www.cnblogs.com/sking7/archive/2011/10/12/2208707.html
本文深入探讨了JavaScript中用于按需加载内部文件的mis.include函数及无限制加载file文件的mis.loadJavaScript函数的工作原理,提供了对内部文件管理和外部资源加载的详细理解。
3626

被折叠的 条评论
为什么被折叠?



