var Fader = new Class({
	
	Implements: [Options, Events],
	
	options:{
		fadeTo : 0.5,
		fadeFrom : 1,
		duration : 250,
		transition : Fx.Transitions.Sine.easeOut
	},

	initialize: function(elements, options){
		this.setOptions(options);
		this.elements = $$(elements);
		
		var opts = this.options;
		
		
		this.elements.each(function(element){
			
			var morpher = new Fx.Morph(element,{duration : opts.duration, transition : opts.transition});
			
			element.addEvents({
				'mouseenter' : function(event){
					this.morph({'opacity' : [opts.fadeFrom, opts.fadeTo]});
				},
				
				'mouseout' : function(event){
					this.morph({'opacity' : [opts.fadeTo, opts.fadeFrom]});
				}
				
			});
		});
		
	}
});