Element: DOMMouseScroll 事件

已棄用:此特性不再推薦。雖然某些瀏覽器可能仍然支援它,但它可能已經從相關的網路標準中刪除,可能正在刪除過程中,或者可能僅為相容性目的而保留。請避免使用它,如果可能,請更新現有程式碼;請參閱本頁底部的相容性表格以指導您的決策。請注意,此特性可能隨時停止工作。

非標準:此特性未標準化。我們不建議在生產環境中使用非標準特性,因為它們瀏覽器支援有限,並且可能會更改或被移除。但是,在沒有標準選項的特定情況下,它們可以是合適的替代方案。

DOM DOMMouseScroll 事件在滑鼠滾輪或類似裝置操作、且自上次事件以來累積滾動量超過 1 行或 1 頁時非同步觸發。它由 MouseScrollEvent 介面表示。此事件僅由 Firefox 實現。您應該改用標準的 wheel 事件。

如果您想阻止滑鼠滾輪事件的預設操作,僅處理 Gecko 上的此事件是不夠的,因為如果原生滑鼠滾輪事件的滾動量小於 1 行(或當系統設定為按頁面滾動時小於 1 頁),則可能會在未觸發此事件的情況下觸發其他滑鼠滾輪事件。

在 Gecko 17(Firefox 17)或更高版本中,您需要呼叫 wheel 事件的 preventDefault(),該事件必須為每個原生事件觸發。

如果可用,請使用標準化的 wheel 事件。

語法

在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。

js
addEventListener("DOMMouseScroll", (event) => { })

onDOMMouseScroll = (event) => { }

事件型別

一個 WheelEvent。繼承自 MouseEventUIEventEvent

Event UIEvent MouseEvent WheelEvent

事件屬性

除了標準事件之外,此事件只有一個額外的屬性。

detail

detail 屬性更精確地描述了滾動,正值表示向下滾動,負值表示向上滾動。

如果事件表示按頁面向上滾動,detail 的值為 -32768。如果事件表示按頁面向下滾動,值為 +32768。任何其他值表示要滾動的行數,方向由值的符號表示。

注意: 受信任的事件絕不會以 0 作為 detail 的值傳送。

受信任的事件絕不會以 0 觸發。

注意: 如果平臺的原生滑鼠滾輪事件僅提供按畫素的滾動距離,或者使用者可以自定義滾動速度,則該值是使用事件目標最近的可滾動祖先元素的行高計算的。如果該元素的字型大小小於 mousewheel.min_line_scroll_amount,則使用該首選項的值作為行高。

瀏覽器相容性

另見

  • MouseScrollEvent
  • Gecko 的舊畫素滾動事件:MozMousePixelScroll
  • 非 Gecko 瀏覽器的舊滑鼠滾輪事件:mousewheel
  • 標準化 wheel 事件:wheel