| 467 | var mousewheelTypes = ['DOMMouseScroll', 'mousewheel']; |
| 468 | function mousewheelHandler(event) { |
| 469 | var args = [].slice.call( arguments, 1 ), delta = 0, returnValue = true; |
| 470 | |
| 471 | event = jQuery.event.fix(event || window.event); |
| 472 | event.type = "mousewheel"; |
| 473 | |
| 474 | if ( event.wheelDelta ) delta = event.wheelDelta/120; |
| 475 | if ( event.detail ) delta = -event.detail/3; |
| 476 | |
| 477 | // Add events and delta to the front of the arguments |
| 478 | args.unshift(event, delta); |
| 479 | |
| 480 | return jQuery.event.handle.apply(this, args); |
| 481 | }; |
| 482 | jQuery.event.special.mousewheel = { |
| 483 | setup: function() { |
| 484 | if ( this.addEventListener ) |
| 485 | for ( var i=types.length; i; ) |
| 486 | this.addEventListener( types[--i], handler, false ); |
| 487 | else |
| 488 | this.onmousewheel = handler; |
| 489 | }, |
| 490 | |
| 491 | teardown: function() { |
| 492 | if ( this.removeEventListener ) |
| 493 | for ( var i=types.length; i; ) |
| 494 | this.removeEventListener( types[--i], handler, false ); |
| 495 | else |
| 496 | this.onmousewheel = null; |
| 497 | } |
| 498 | }; |
| 499 | |