1 /** 2 * Hilo 3 * Copyright 2015 alibaba.com 4 * Licensed under the MIT License 5 */ 6 7 /** 8 * @private 9 * @class 图片资源加载器。 10 * @module hilo/loader/ImageLoader 11 * @requires hilo/core/Class 12 */ 13 var ImageLoader = Class.create({ 14 load: function(data){ 15 var me = this; 16 17 var image = new Image(); 18 if(data.crossOrigin){ 19 image.crossOrigin = data.crossOrigin; 20 } 21 22 image.onload = //me.onLoad.bind(image); 23 function(){ 24 me.onLoad(image) 25 }; 26 image.onerror = image.onabort = me.onError.bind(image); 27 image.src = data.src + (data.noCache ? (data.src.indexOf('?') == -1 ? '?' : '&') + 't=' + (+new Date) : ''); 28 }, 29 30 onLoad: function(e){ 31 e = e||window.event; 32 var image = e//e.target; 33 image.onload = image.onerror = image.onabort = null; 34 return image; 35 }, 36 37 onError: function(e){ 38 var image = e.target; 39 image.onload = image.onerror = image.onabort = null; 40 return e; 41 } 42 43 });