/*! jQuery.scrollpanel 0.2.0 - //larsjung.de/scrollpanel/ - MIT License */ !function(o){"use strict";var e=o(window),t="scrollpanel",s={prefix:"sp-"},r=function(e,t){var r=this;r.$el=o(e),r.settings=o.extend({},s,t);var n=r.settings.prefix;r.mouseOffsetY=0,r.updateId=0,r.scrollProxy=o.proxy(r.scroll,r),r.$el.css("position")&&"static"!==r.$el.css("position")||r.$el.css("position","relative"),r.$scrollbar=o('
'),r.$thumb=o('').appendTo(r.$scrollbar),r.$el.addClass(n+"host").wrapInner(' ').append(r.$scrollbar),r.$viewport=r.$el.find("> ."+n+"viewport"),r.$container=r.$viewport.find("> ."+n+"container"),r.$el.on("mousewheel",function(o,e,t,s){r.$viewport.scrollTop(r.$viewport.scrollTop()-50*s),r.update(),o.preventDefault(),o.stopPropagation()}).on("scroll",function(){r.update()}),r.$viewport.css({paddingRight:r.$scrollbar.outerWidth(!0),height:r.$el.height(),overflow:"hidden"}),r.$container.css({overflow:"hidden"}),r.$scrollbar.css({position:"absolute",top:0,right:0,overflow:"hidden"}).on("mousedown",function(o){r.mouseOffsetY=r.$thumb.outerHeight()/2,r.onMousedown(o)}).each(function(){r.onselectstart=function(){return!1}}),r.$thumb.css({position:"absolute",left:0,width:"100%"}).on("mousedown",function(o){r.mouseOffsetY=o.pageY-r.$thumb.offset().top,r.onMousedown(o)}),r.update()};o.extend(r.prototype,{update:function(o){var e=this;e.updateId&&!o?(clearInterval(e.updateId),e.updateId=0):!e.updateId&&o&&(e.updateId=setInterval(function(){e.update(!0)},50)),e.$viewport.css("height",e.$el.height());var t=e.$el.height(),s=e.$container.outerHeight(),r=e.$viewport.scrollTop(),n=r/s,i=Math.min(t/s,1),l=e.$scrollbar.height();1>i?(e.$scrollbar.css({height:e.$el.innerHeight()+l-e.$scrollbar.outerHeight(!0)}).fadeIn(50),e.$thumb.css({top:l*n,height:l*i})):e.$scrollbar.fadeOut(50)},scroll:function(o){var e=this,t=(o.pageY-e.$scrollbar.offset().top-e.mouseOffsetY)/e.$scrollbar.height();e.$viewport.scrollTop(e.$container.outerHeight()*t),e.update(),o.preventDefault(),o.stopPropagation()},onMousedown:function(o){var t=this;t.scroll(o),t.$scrollbar.addClass("active"),e.on("mousemove",t.scrollProxy).one("mouseup",function(o){t.$scrollbar.removeClass("active"),e.off("mousemove",t.scrollProxy),t.scroll(o)})}}),o.fn[t]=function(e,s){return this.each(function(){var n=o(this),i=n.data(t);i||(i=new r(this,e),i.update(),n.data(t,i)),"update"===e&&i.update(s)})}}(jQuery);