/*! copyright (c) 2011 brandon aaron (http://brandonaaron.net) * licensed under the mit license (license.txt). * * thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. * thanks to: mathias bank(http://www.mathias-bank.de) for a scope bug fix. * thanks to: seamus leahy for adding deltax and deltay * * version: 3.0.6 * * requires: 1.2.2+ */ (function($) { var types = ['dommousescroll', 'mousewheel']; if ($.event.fixhooks) { for ( var i=types.length; i; ) { $.event.fixhooks[ types[--i] ] = $.event.mousehooks; } } $.event.special.mousewheel = { setup: function() { if ( this.addeventlistener ) { for ( var i=types.length; i; ) { this.addeventlistener( types[--i], handler, false ); } } else { this.onmousewheel = handler; } }, teardown: function() { if ( this.removeeventlistener ) { for ( var i=types.length; i; ) { this.removeeventlistener( types[--i], handler, false ); } } else { this.onmousewheel = null; } } }; $.fn.extend({ mousewheel: function(fn) { return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel"); }, unmousewheel: function(fn) { return this.unbind("mousewheel", fn); } }); function handler(event) { var orgevent = event || window.event, args = [].slice.call( arguments, 1 ), delta = 0, returnvalue = true, deltax = 0, deltay = 0; event = $.event.fix(orgevent); event.type = "mousewheel"; // old school scrollwheel delta if ( orgevent.wheeldelta ) { delta = orgevent.wheeldelta/120; } if ( orgevent.detail ) { delta = -orgevent.detail/3; } // new school multidimensional scroll (touchpads) deltas deltay = delta; // gecko if ( orgevent.axis !== undefined && orgevent.axis === orgevent.horizontal_axis ) { deltay = 0; deltax = -1*delta; } // webkit if ( orgevent.wheeldeltay !== undefined ) { deltay = orgevent.wheeldeltay/120; } if ( orgevent.wheeldeltax !== undefined ) { deltax = -1*orgevent.wheeldeltax/120; } // add event and delta to the front of the arguments args.unshift(event, delta, deltax, deltay); return ($.event.dispatch || $.event.handle).apply(this, args); } })(jquery); /* |xgv00|dfc39641854d634f8704ed31d4f21bf7 */// javascript document