Skip to content

Commit b1a0761

Browse files
committed
Clean up the various delta conditionals a bit
1 parent ced8a7b commit b1a0761

File tree

1 file changed

+19
-20
lines changed

1 file changed

+19
-20
lines changed

jquery.mousewheel.js

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
*
44
* Version: 3.1.5-pre
55
*
6-
* Requires: 1.2.2+
6+
* Requires: jQuery 1.2.2+
77
*/
88

99
(function (factory) {
@@ -19,8 +19,9 @@
1919
}
2020
}(function ($) {
2121

22-
var toFix = ['wheel', 'mousewheel', 'DOMMouseScroll', 'MozMousePixelScroll'];
22+
var toFix = ['wheel', 'mousewheel', 'DOMMouseScroll', 'MozMousePixelScroll'];
2323
var toBind = 'onwheel' in document || document.documentMode >= 9 ? ['wheel'] : ['mousewheel', 'DomMouseScroll', 'MozMousePixelScroll'];
24+
var slice = Array.prototype.slice;
2425
var lowestDelta, lowestDeltaXY;
2526

2627
if ( $.event.fixHooks ) {
@@ -64,7 +65,7 @@
6465

6566
function handler(event) {
6667
var orgEvent = event || window.event,
67-
args = [].slice.call(arguments, 1),
68+
args = slice.call(arguments, 1),
6869
delta = 0,
6970
deltaX = 0,
7071
deltaY = 0,
@@ -75,32 +76,30 @@
7576
event.type = 'mousewheel';
7677

7778
// Old school scrollwheel delta
78-
if ( orgEvent.wheelDelta ) { delta = orgEvent.wheelDelta; }
79-
if ( orgEvent.detail ) { delta = orgEvent.detail * -1; }
79+
if ( 'detail' in orgEvent ) { deltaY = orgEvent.detail * -1; }
80+
if ( 'wheelDelta' in orgEvent ) { deltaY = orgEvent.wheelDelta; }
81+
if ( 'wheelDeltaY' in orgEvent ) { deltaY = orgEvent.wheelDeltaY; }
82+
if ( 'wheelDeltaX' in orgEvent ) { deltaX = orgEvent.wheelDeltaX * -1; }
8083

81-
// At a minimum, setup the deltaY to be delta
82-
deltaY = delta;
83-
84-
// Firefox < 17 related to DOMMouseScroll event
85-
if ( orgEvent.axis !== undefined && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) {
84+
// Firefox < 17 horizontal scrolling related to DOMMouseScroll event
85+
if ( 'axis' in orgEvent && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) {
8686
deltaY = 0;
8787
deltaX = delta * -1;
8888
}
8989

90+
// Set delta to be deltaY or deltaX if deltaY is 0 for backwards compatabilitiy
91+
delta = deltaY === 0 ? deltaX : deltaY;
92+
9093
// New school wheel delta (wheel event)
91-
if ( orgEvent.deltaY ) {
92-
deltaY = orgEvent.deltaY * -1;
93-
delta = deltaY;
94+
if ( 'deltaY' in orgEvent ) {
95+
deltaY = orgEvent.deltaY * -1;
96+
delta = deltaY;
9497
}
95-
if ( orgEvent.deltaX ) {
96-
deltaX = orgEvent.deltaX;
97-
delta = deltaX * -1;
98+
if ( 'deltaX' in orgEvent ) {
99+
deltaX = orgEvent.deltaX;
100+
delta = detlaX * -1;
98101
}
99102

100-
// Webkit
101-
if ( orgEvent.wheelDeltaY !== undefined ) { deltaY = orgEvent.wheelDeltaY; }
102-
if ( orgEvent.wheelDeltaX !== undefined ) { deltaX = orgEvent.wheelDeltaX * -1; }
103-
104103
// Look for lowest delta to normalize the delta values
105104
absDelta = Math.abs(delta);
106105
if ( !lowestDelta || absDelta < lowestDelta ) { lowestDelta = absDelta; }

0 commit comments

Comments
 (0)