	var MouseGallery = new Class({
	
		options: {

		},

		initialize: function(elements, options){
			this.setOptions(options);
			$$(elements).each(this.build, this);
		},
	
		build: function (el) {
			el.addEvent('mousemove', function(event){
				this.locate(event,el);		
			}.bind(this));
		},
	
		locate: function(event,el){
// 			var event = new Event();
 			var mouseposition = event.clientX; // where is my mouse
 			var images = $ES('.gallery_img',el); //found images as child elms. in DOM
 			var images_no = images.length; // size of returned image array
 			var elem_size_x = el.getSize().size.x; // size-x of rollover field 
 			var elem_size_y = el.getSize().size.y; // size-y of rollover field 
 			var elem_pos = el.getPosition().x; // x-pos of elem for relativation
 			var elem_offset_y = el.getPosition().y;
 			var elem_offset_y = '';
 			var changeAfterPx = Math.round(elem_size_x / images_no)+0.1; // change images after x px
 			var relpos = mouseposition - elem_pos+0.1;
 			var act_image_no = Math.ceil((relpos / changeAfterPx))-1;
 			var act_image_obj = images[act_image_no];
 			
 			for (i=0;i<images_no;i++) {
				if (i != act_image_no) {
					images[i].setStyle('position','absolute');
		 			images[i].setStyle('display','none');
		 			images[i].setOpacity(0);
		 		} else {
		 			images[i].setStyle('display','block');
		 			images[i].setStyle('z-index','998');

					// with fx
						if (images[i].getStyle('opacity')==0) {
						this.fx = new Fx.Style(images[i], 'opacity', {duration: 400, wait: false});
						this.fx.start(1);
					 }
					

					// without fx
					
					//images[i].setOpacity(1);
		 			images[i].setStyle('top',elem_offset_y);
		 			imageSizeY = $E('img',images[i]).getSize().size.y;
			// Korrektur der Höhen bei höheren Bilder - auskommentiert da Problem mit Tooltip, der von der Pos des Bildes abhängt und somit mitspringt	
		 	//		if (imageSizeY>elem_size_y) {
			// 			imageSizeX = $E('img',images[i]).getSize().size.x;
		 	//			$E('img',images[i]).setStyle('height',elem_size_y);
		 	//			$E('img',images[i]).setStyle('width','auto');
		 	//			$E('img',images[i]).setStyle('margin-top',-50);
		 	//		}		 			
		 		}
			}
	 		
		}
	});
	MouseGallery.implement(new Events, new Options);
