--- title: WheelEvent slug: Web/API/WheelEvent tags: - API - DOM - Reference - WheelEvent - 接口 translation_of: Web/API/WheelEvent ---

{{APIRef("DOM Events")}}

WheelEvent 接口表示用户滚动鼠标滚轮或类似输入设备时触发的事件。

重要:该事件为标准规定的滚轮事件接口。早期的浏览器实现过{{ domxref("MouseWheelEvent") }}和{{domxref("MouseScrollEvent")}}两种滚轮事件接口,但这两种接口皆非标准,加之各浏览器间对其兼容性极差。因而开发者应使用该标准事件接口取代这两个非标准接口。
不要混淆 wheel 事件和 {{event("scroll")}} 事件:{{event("wheel")}} 事件的默认动作取决于浏览器实现。因此 wheel 事件不一定会触发 {{event("scroll")}} 事件。即便滚轮事件引发了文档内容的滚动行为,也不表示 wheel 事件中的 delta* 值恰好反映文档内容的滚动方向。因此,不要依赖 delta* 属性获知文档内容的滚动方向。可在文档内容滚动事件({{event("scroll")}})中监视target的{{domxref("Element.scrollLeft", "scrollLeft")}}和{{domxref("Element.scrollTop", "scrollTop")}}的变化以推断滚动方向。

{{InheritanceDiagram}}

构造函数

{{domxref("WheelEvent.WheelEvent", "WheelEvent()")}}
创建一个WheelEvent对象。

属性

该接口继承了父接口{{domxref("MouseEvent")}}、{{domxref("UIEvent")}}、{{domxref("Event")}}的属性。

{{domxref("WheelEvent.deltaX")}} {{readonlyinline}}
返回double值,该值表示滚轮的横向滚动量。
{{domxref("WheelEvent.deltaY")}} {{readonlyinline}}
返回double值,该值表示滚轮的纵向滚动量。
{{domxref("WheelEvent.deltaZ")}} {{readonlyinline}}
返回double值,该值表示滚轮的z轴方向上的滚动量。
{{domxref("WheelEvent.deltaMode")}} {{readonlyinline}}
返回unsigned long值,该值表示上述各delta*的值的单位。该值及所表示的单位如下:
常量 描述
DOM_DELTA_PIXEL 0x00 滚动量单位为像素。
DOM_DELTA_LINE 0x01 滚动量单位为行。
DOM_DELTA_PAGE 0x02 滚动量单位为页。

方法

该接口本身未定义方法,但继承了父接口{{domxref("MouseEvent")}}、{{domxref("UIEvent")}}、{{domxref("Event")}}的方法。

规范

规范 状态 注释
{{SpecName("UI Events", "#interface-wheelevent", "The WheelEvent interface")}} {{Spec2("UI Events")}}
{{SpecName('DOM3 Events','#interface-wheelevent','WheelEvent')}} {{Spec2('DOM3 Events')}} Initial definition.

浏览器兼容性

{{Compat("api.WheelEvent")}}

参见