The WheelEvent interface represents events that occur due to the user moving a mouse wheel or similar input device.

Important: This is the standard wheel event interface to use. Old versions of browsers implemented the non-standard and non-cross-browser-compatible MouseWheelEvent and MouseScrollEvent interfaces. Use this interface and avoid the non-standard ones.

Not to be confused with a scroll event: Please keep in mind that the default action of a wheel event is implementation-defined — a wheel event doesn't necessarily dispatch a scroll event. Even if it does, that doesn't mean that the delta values in the wheel event must reflect the content's scrolling direction. So do not rely on delta properties to get the content's scrolling direction — instead detect value changes of scrollLeft and scrollTop in a scroll event.

Constructor

WheelEvent()
Creates a WheelEvent object.

Properties

This interface inherits properties from its parents, MouseEvent, UIEvent and Event.

WheelEvent.deltaX Read only
Returns a double representing the horizontal scroll amount.
WheelEvent.deltaY Read only
Returns a double representing the vertical scroll amount.
WheelEvent.deltaZ Read only
Returns a double representing the scroll amount for the z-axis.
WheelEvent.deltaMode Read only
Returns an unsigned long representing the unit of the delta values scroll amount. Permitted values are:
Constant Value Description
DOM_DELTA_PIXEL 0x00 The delta values are specified in pixels.
DOM_DELTA_LINE 0x01 The delta values are specified in lines.
DOM_DELTA_PAGE 0x02 The delta values are specified in pages.

Methods

This interface doesn't define any methods, but inherits methods from its parents, MouseEvent, UIEvent and Event.

Specifications

Specification Status Comment
Document Object Model (DOM) Level 3 Events Specification
The definition of 'WheelEvent' in that specification.
Obsolete Initial definition.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Basic supportChrome Full support 31Edge Full support YesFirefox Full support 17IE Full support 9Opera Full support 18Safari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 17Opera Android Full support YesSafari iOS ? Samsung Internet Android ?
Pinch-to-zoom maps to WheelEvent + ctrl key.Chrome Full support 31Edge ? Firefox Full support 55IE ? Opera ? Safari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile ? Firefox Android Full support 55Opera Android ? Safari iOS ? Samsung Internet Android ?
WheelEvent() constructorChrome Full support YesEdge Full support YesFirefox Full support 17IE No support NoOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 17Opera Android Full support YesSafari iOS ? Samsung Internet Android ?
deltaModeChrome Full support 31Edge Full support YesFirefox Full support 17IE Full support 9Opera Full support 18Safari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 17Opera Android Full support YesSafari iOS ? Samsung Internet Android ?
deltaXChrome Full support 31Edge Full support YesFirefox Full support 17IE Full support 9
Notes
Full support 9
Notes
Notes IE9 supports an old draft of the spec where this value was a long instead of a double.
Opera Full support 18Safari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 17Opera Android Full support YesSafari iOS ? Samsung Internet Android ?
deltaYChrome Full support 31Edge Full support YesFirefox Full support 17IE Full support 9
Notes
Full support 9
Notes
Notes IE9 supports an old draft of the spec where this value was a long instead of a double.
Opera Full support 18Safari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 17Opera Android Full support YesSafari iOS ? Samsung Internet Android ?
deltaZChrome Full support 31Edge Full support YesFirefox Full support 17IE Full support 9
Notes
Full support 9
Notes
Notes IE9 supports an old draft of the spec where this value was a long instead of a double.
Opera Full support 18Safari Full support YesWebView Android Full support YesChrome Android Full support YesEdge Mobile Full support YesFirefox Android Full support 17Opera Android Full support YesSafari iOS ? Samsung Internet Android ?

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
See implementation notes.
See implementation notes.

See also

Document Tags and Contributors

Last updated by: mfluehr,