| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 | 
							- (function (root, factory) {
 
-     if (typeof define === 'function' && define.amd) {
 
-         //AMD
 
-         define(factory);
 
-     } else if (typeof exports === 'object') {
 
-         //Node, CommonJS之类的
 
-         module.exports = factory();
 
-     } else {
 
-         //浏览器全局变量(root 即 window)
 
-         root.resLoader = factory(root);
 
-     }
 
- }(this, function () {
 
-     var isFunc = function(f){
 
-         return typeof f === 'function';
 
-     }
 
-     //构造器函数
 
-     function resLoader(config){
 
-         this.option = {
 
-             resourceType : 'image', //资源类型,默认为图片
 
-             baseUrl : './', //基准url
 
-             resources : [], //资源路径数组
 
-             onStart : null, //加载开始回调函数,传入参数total
 
-             onProgress : null, //正在加载回调函数,传入参数currentIndex, total
 
-             onComplete : null //加载完毕回调函数,传入参数total
 
-         }
 
-         if(config){
 
-             for(i in config){
 
-                 this.option[i] = config[i];
 
-             }
 
-         }
 
-         else{
 
-             alert('参数错误!');
 
-             return;
 
-         }
 
-         this.status = 0; //加载器的状态,0:未启动   1:正在加载   2:加载完毕
 
-         this.total = this.option.resources.length || 0; //资源总数
 
-         this.currentIndex = 0; //当前正在加载的资源索引
 
-     };
 
-     resLoader.prototype.start = function(){
 
-         this.status = 1;
 
-         var _this = this;
 
-         var baseUrl = this.option.baseUrl;
 
-         for(var i=0,l=this.option.resources.length; i<l; i++){
 
-             var r = this.option.resources[i], url = '';
 
-             if(/^(\/|http(s?):\/\/)/.test(r)){
 
-                 url = r;
 
-             } else {
 
-                 url = baseUrl + r;
 
-             }
 
-             var image = new Image();
 
-             image.onload = function(){_this.loaded();};
 
-             image.onerror = function(){_this.loaded();};
 
-             image.src = url;
 
-         }
 
-         if(isFunc(this.option.onStart)){
 
-             this.option.onStart(this.total);
 
-         }
 
-     }
 
-     resLoader.prototype.loaded = function(){
 
-         if(isFunc(this.option.onProgress)){
 
-             this.option.onProgress(++this.currentIndex, this.total);
 
-         }
 
-         //加载完毕
 
-         if(this.currentIndex===this.total){
 
-             if(isFunc(this.option.onComplete)){
 
-                 this.option.onComplete(this.total);
 
-             }
 
-         }
 
-     }
 
-     //暴露公共方法
 
-     return resLoader;
 
- }));
 
 
  |