js onwheel獲取鼠標滾動量


js中獲取鼠標滾動量/滾動了多少可以用onwheel事件來實現。

1 let axis = 0;  // 如果需要記錄累積量,可以用一個變量來存儲下來
2 window.onwheel = function (ev) {
3     axis += ev.deltaY;
4     console.log(ev)
5 }

ev對象如下

其中的delta項就是各個方向上的滾動量,注意這個量是每一次連續滾動了多少,而不是累積量。如deltaY,鼠標向上滾動時為負值,反之正值。滾輪有橫向滾動鍵(一般貌似是滾輪左右撥動的按鍵觸發式)的則可以捕獲到deltaX的變化。

這樣就可以通過滾動量的變化來進行某些操作了,比方說圖片的放大縮小,translateZ()拉近拉遠,改變透視距離等。

注意:mousewheelEvent在部分瀏覽器上依舊可以用來處理同樣的操作,是一個棄用方案,不推薦使用,詳見MDN說明

另外:wheelEvent和onscroll是不一樣的,scroll只針對於有滾動量(有滾動條)的對象。

 

 

onwheel / onmousewheel / onmousescroll 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM