bgneal@26: /*! Copyright (c) 2009 Brandon Aaron (http://brandonaaron.net) bgneal@26: * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) bgneal@26: * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses. bgneal@26: * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers. bgneal@26: * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix. bgneal@26: * bgneal@26: * Version: 3.0.2 bgneal@26: * bgneal@26: * Requires: 1.2.2+ bgneal@26: */ bgneal@26: bgneal@26: (function(b){function d(a){var f=[].slice.call(arguments,1),e=0;a=b.event.fix(a||window.event);a.type="mousewheel";if(a.wheelDelta)e=a.wheelDelta/120;if(a.detail)e=-a.detail/3;f.unshift(a,e);return b.event.handle.apply(this,f)}var c=["DOMMouseScroll","mousewheel"];b.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=c.length;a;)this.addEventListener(c[--a],d,false);else this.onmousewheel=d},teardown:function(){if(this.removeEventListener)for(var a=c.length;a;)this.removeEventListener(c[--a], bgneal@26: d,false);else this.onmousewheel=null}};b.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery);