proprio niente????
il codice js me lo sono studiato non mi pare ci siano errori...
codice:
(function($) {
$.fn.jScrollbar= function(op) {
var defaults = {
scrollStep : 10,
allowMouseWheel : true
};
if(this.length>0)
return this.each(function() {
/*
// Vars
*/
var
$this = $(this),
opts = $.extend(defaults, op),
js_mask = $this.find('.jScrollbar_mask'),
js_drag = $this.find('.jScrollbar_draggable a.draggable'),
js_Parentdrag = $this.find('.jScrollbar_draggable'),
diff = parseInt(js_mask.innerHeight()) - parseInt($this.height());
/** if mask container is heighter than the main container **/
if(diff > 0)
{
js_Parentdrag.show();
var pxDraggable = parseInt(js_Parentdrag.height()) - parseInt(js_drag.height());;
var pxUpWhenScrollMove = opts.scrollStep;
var pxUpWhenMaskMove = pxUpWhenScrollMove * (diff/pxDraggable);
js_drag
.click(function(e){e.preventDefault();})
.draggable({
axis:'y',
containment: js_Parentdrag,
scroll: true,
drag: function(event, ui){
js_mask.css('top','-'+(ui.position.top * (diff/pxDraggable))+'px');
}
});
/** if mousewheel allowed **/
if(opts.allowMouseWheel)
$this.mousewheel(function(objEvent, intDelta) {
// mousewheel up (first if) and mousewheel down (second if)
if (intDelta > 0 && parseInt(js_mask.css('top')) < 0){
js_drag.stop(true, true).animate({top:'-='+pxUpWhenScrollMove+'px'}, 100);
js_mask.stop(true, true).animate({top:'+='+pxUpWhenMaskMove+'px'},100,function(){
RelativeTop = parseInt(js_mask.css('top'));
if(RelativeTop > 0 ) {
js_drag.animate({top:'0px'},150);
js_mask.css({top:0});
}
});
}
else if (intDelta < 00 && parseInt(js_mask.css('top')) > -diff) {
js_drag.stop(true, true).animate({top:'+='+pxUpWhenScrollMove+'px'}, 100);
js_mask.stop(true, true).animate({top:'-='+pxUpWhenMaskMove+'px'},100,function(){
RelativeTop = parseInt(js_mask.css('top'));
if(RelativeTop < -diff)
{
js_mask.css({top:-diff});
js_drag.animate({top:pxDraggable},150);
}
});
}
});
}
});
}
})(jQuery);