slimScroll is a small jQuery plugin that transforms any div into a scrollable area with a nice scrollbar - similar to the one Facebook and Google started using in their products recently. slimScroll doesn't occupy any visual space as it only appears on a user initiated mouse-over. User can drag the scrollbar or use mouse-wheel to change the scroll value.
##Documentation
Demo and documentation available here: jQuery slimScroll docs
###Example
<script type="text/javascript" src="libs/jquery.slimscroll.min.js"></script>
// Hook document ready event
$('document').ready(function(){
    // Initialise slimScroll
    $(selector).slimScroll({
        height: '250px'
    });
});
###Default Options
| Options | Default | Type | Description | 
|---|---|---|---|
| allowPageScroll | false | boolean | check if mousewheel should scroll the window if we reach top/bottom | 
| alwaysVisible | false | boolean | enables always-on mode for the scrollbar | 
| animate | false | boolean | sets animation status on a given scroll | 
| barClass | 'slimScrollBar' | string | defautlt CSS class of the slimscroll bar | 
| barClassH | 'slimScrollBarHor' | string | defautlt CSS class of the slimscroll bar (horizontal) | 
| barFixSize | 0 | number | fixed bar height/width (set size in pixels | 
| borderRadius | '7px' | string[pixel] | sets border radius | 
| color | '#000' | string[hex code] | scrollbar color, accepts any hex/color value | 
| cursor | 'normal' | string | cursor for for the scroll bar | 
| disableFadeOut | false | boolean | check if we should hide the scrollbar when user is hovering over | 
| distance | '1px' | string[pixel] | distance in pixels between the side edge and the scrollbar | 
| height | '250px' | string[pixel] | height in pixels of the visible scroll area | 
| horizontal | false | boolean | enable scroll horizontal | 
| opacity | 0.4 | number | sets scrollbar opacity | 
| position | 'right' | string | scrollbar position - left/right | 
| railBorderRadius | '7px' | string[pixel] | sets border radius of the rail | 
| railClass | 'slimScrollRail' | string | defautlt CSS class of the slimscroll rail | 
| railClassH | 'slimScrollRailHor' | string | defautlt CSS class of the slimscroll rail (horizontal) | 
| railColor | '#333' | string[pixel] | sets rail color | 
| railDraggable | true | boolean | whether we should use jQuery UI Draggable to enable bar dragging | 
| railOpacity | 0.2 | number | sets rail opacity | 
| railVisible | false | boolean | sets visibility of the rail | 
| size | '7px' | string[pixel] | width in pixels of the scrollbar and rail | 
| start | 'top' | string | default scroll position on load - top / bottom / $('selector') | 
| touchScrollStep | 200 | number | scroll amount applied when user is using gestures | 
| wheelStep | 20 | number | scroll amount applied to each mouse wheel step | 
| width | 'auto' | `number | string` | 
| wrapperClass | 'slimScrollDiv' | string | defautlt CSS class of the slimscroll wrapper | 
| zIndex | 90 | number | z-index for the scroll bar | 
####Example
$(selector).slimScroll({
    width          : '300px',
    height         : '500px',
    size           : '10px',
    position       : 'left',
    color          : '#ffcc00',
    alwaysVisible  : true,
    distance       : '20px',
    start          : $('#child_image_element'),
    railVisible    : true,
    railColor      : '#222',
    railOpacity    : 0.3,
    wheelStep      : 10,
    allowPageScroll: false,
    disableFadeOut : false
});
###Events
- slimscroll
When the scrollbar reaches top or bottom of the parent container, slimscroll will trigger the slimscroll event. Use jQuery bind to capture this event:
$(selector).slimScroll().bind('slimscroll', function(e, pos){
    console.log("Reached " + pos);
});
- slimscrolling
When scrolling within slimscroll, the slimscrolling event is triggered. Use jQuery bind to capture this event:
$(selector).slimScroll().bind('slimscrolling', function(e, msg){
    console.log(msg);
});
Note: The slimscrolling event will be triggered no matter if the div has actually been able to move.
###Public Calls
- scrollTo
Jumps to the specified scroll value. Can be called on any element with slimScroll already enabled.
$(selector).slimScroll({ 
    scrollTo: '50px' 
});
- scrollBy
Increases/decreases current scroll value by specified amount (positive or negative). Can be called on any element with slimScroll already enabled.
$(selector).slimScroll({ 
    scrollBy: '60px' 
});
Copyright (c) 2011 Piotr Rochala (http://rocha.la)
Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.