Skip to content

Commit

Permalink
Adding deltaX and deltaY for horizontal scrolling
Browse files Browse the repository at this point in the history
  • Loading branch information
Seamus Leahy authored and brandonaaron committed Aug 23, 2010
1 parent 9ceaad6 commit dbdbb86
Showing 1 changed file with 17 additions and 2 deletions.
19 changes: 17 additions & 2 deletions jquery.mousewheel.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,16 +43,31 @@ $.fn.extend({


function handler(event) {
var args = [].slice.call( arguments, 1 ), delta = 0, returnValue = true;
var orgEvent = event;
var args = [].slice.call( arguments, 1 ), delta = 0, returnValue = true, deltaX = 0, deltaY = 0;

event = $.event.fix(event || window.event);
event.type = "mousewheel";

// Old school scrollwheel delta
if ( event.wheelDelta ) delta = event.wheelDelta/120;
if ( event.detail ) delta = -event.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);
args.unshift(event, delta, deltaX, deltaY);

return $.event.handle.apply(this, args);
}
Expand Down

0 comments on commit dbdbb86

Please sign in to comment.