Skip to content

Commit dbdbb86

Browse files
Seamus Leahybrandonaaron
authored andcommitted
Adding deltaX and deltaY for horizontal scrolling
1 parent 9ceaad6 commit dbdbb86

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

jquery.mousewheel.js

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,16 +43,31 @@ $.fn.extend({
4343

4444

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

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

52+
// Old school scrollwheel delta
5153
if ( event.wheelDelta ) delta = event.wheelDelta/120;
5254
if ( event.detail ) delta = -event.detail/3;
5355

56+
// New school multidimensional scroll (touchpads) deltas
57+
deltaY = delta;
58+
59+
// Gecko
60+
if( orgEvent.axis !== undefined && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) {
61+
deltaY = 0;
62+
deltaX = -1*delta;
63+
}
64+
65+
// Webkit
66+
if( orgEvent.wheelDeltaY !== undefined ) deltaY = orgEvent.wheelDeltaY/120;
67+
if( orgEvent.wheelDeltaX !== undefined ) deltaX = -1*orgEvent.wheelDeltaX/120;
68+
5469
// Add event and delta to the front of the arguments
55-
args.unshift(event, delta);
70+
args.unshift(event, delta, deltaX, deltaY);
5671

5772
return $.event.handle.apply(this, args);
5873
}

0 commit comments

Comments
 (0)