function onmousewheel(element, callback) {
	// @author Andrea Giammarchi [http://www.devpro.it/]
	// @license MIT [http://www.opensource.org/licenses/mit-license.php]
	// @credits Adomas Paltanavicius [http://adomas.org/javascript-mouse-wheel/]
	function __onwheel(event) {
		var delta = 0;
		if(event.wheelDelta) delta = event.wheelDelta / 120;
		if(window.opera) delta = -delta;
		else if(event.detail) delta = -event.detail / 3;
		if(delta) callback.call(element, delta);
		if(event.preventDefault) event.preventDefault();
		event.returnValue = false;
		return false;
	};
	if(element.addEventListener && !window.opera)
	element.addEventListener("DOMMouseScroll", __onwheel, false);
	else
	element.onmousewheel = (function(base){return function(evt){
	if(!evt) evt = window.event;
	if(base) base.call(element, evt);
	return __onwheel(evt);
	}})(element.onmousewheel);
}
/* mySS_1 */
function $ipo_scroller(elem,width,color,vel_scroll){
	var iHEIGHT=bytefx.$size($(elem)).height;
	var iWIDTH=bytefx.$size($(elem)).width;
	var css_cont="position:absolute;"+
	             "top:5px;"+
				 "left:5px;"+
				 "width:"+(iWIDTH-8-width-5)+"px;"+
				 "height:"+(iHEIGHT-10)+"px;"+
				 "overflow:hidden;";
	var css_cont_int="position:absolute;width:95%;";
	var css_scroll="border:1px "+color+" solid;position:absolute;top:5px;width:"+width+
	               "px;right:5px;height:"+(iHEIGHT-10)+"px;overflow:hidden;";
	var css_scroll_int="background-color:"+color+
	               ";position:absolute;top:2px;width:"+(width-4)+
				   "px;left:2px;bottom:5px;overflow:hidden;";
	$(elem).innerHTML='<div id="'+elem+'_cont" style="'+css_cont+'">'+
	                  '<div id="'+elem+'_cont_int" style="'+css_cont_int+'">'+
					  $(elem).innerHTML+'</div></div>'+
					  '<div id="'+elem+'_scroll" style="'+css_scroll+'"></div>';
					  
	var h_cont_int=bytefx.$size($(elem+'_cont_int')).height;
	var h_cont=bytefx.$size($(elem+'_cont')).height;
	var h_scroll=bytefx.$size($(elem+'_scroll')).height-6;
	var h_scroll_int=Math.floor(h_scroll*h_cont/h_cont_int);
	if(h_scroll_int>h_scroll) h_scroll_int=h_scroll;
	else css_scroll_int+="cursor:pointer;";
	css_scroll_int+='height:'+h_scroll_int+'px;';
	$(elem+'_scroll').innerHTML='<div id="'+elem+'_scroll_int" style="'+css_scroll_int+'"></div>';
	if(h_scroll-h_scroll_int>0){
		bytefx.drag($(elem+'_scroll_int'),null,null,
			function(){
				var space_scroll=parseInt($(elem+'_scroll_int').style.top)-2;
				var h_cont_int=bytefx.$size($(elem+'_cont_int')).height;
				var h_cont=bytefx.$size($(elem+'_cont')).height;
				var h_scroll=bytefx.$size($(elem+'_scroll')).height-4;
				var h_scroll_int=bytefx.$size($(elem+'_scroll_int')).height;
				var top_cont=h_cont_int-h_cont;
				var top_scroll=h_scroll-h_scroll_int-2;
				var k=top_cont/top_scroll; //di quanti pixel mi devo spostare per ogni drag
				$(elem+'_cont_int').style.top=-(Math.ceil(space_scroll*k))+"px";
			},
			{$x:2,x$:2,$y:2,y$:2+h_scroll-h_scroll_int}
		);
		onmousewheel($(elem+"_cont"), function(delta){
			var h_cont_int=bytefx.$size($(elem+'_cont_int')).height;
			var h_cont=bytefx.$size($(elem+'_cont')).height;
			var h_scroll=bytefx.$size($(elem+'_scroll')).height;
			var h_scroll_int=Math.round(h_scroll*h_cont/h_cont_int);
			var top_cont=h_cont_int-h_cont;
			var top_scroll=h_scroll-h_scroll_int-1;
			var k=top_cont/top_scroll; 
			delta=(delta<0)?-1:1;
			var new_top=bytefx.$position($(elem+'_cont_int')).y-bytefx.$position($(elem+"_cont")).y+delta*vel_scroll;
			if(new_top<-top_cont) new_top=-top_cont;
			if(new_top>0) new_top=0;
			$(elem+'_cont_int').style.top=new_top+"px";
			var fittizia=Math.ceil(-new_top/k);
			$(elem+'_scroll_int').style.top=((fittizia<2)?2:fittizia)+"px";
		});
	}
	//*/
}
