var ImageLoader=new Class({Implements:[Options],options:{hidden:'hidden',className:'imageloader',html:'',width:200,height:200,force:false},initialize:function(element,options){if($(new Image())==null){return;};this.setOptions(options);this.element=$(element);this.element.addClass(this.options.hidden);this.imageloader=new Element('div',{'styles':{'width':this.options.width,'height':this.options.height},'class':this.options.className});this.imageloader.injectBefore(this.element);image=$(new Image());image.addEvent('load',this.onload.bind(this));if(this.options.force){image.setProperty('src',this.element.getProperty('src')+(/\?/.test(this.element.getProperty('src'))?'&':'?')+"time="+(new Date().getTime()));}else{image.setProperty('src',this.element.getProperty('src'));}},onload:function(){this.imageloader.dispose();this.element.removeClass(this.options.hidden);}});ImageLoader.implement(new Events,new Options);