JS鼠標滾輪判斷向上還是向下滾動


前言:

    在寫本篇的時候火狐已經支持最新鼠標滾輪事件的標准,支持統一方法onwhell方法,但是ie11沒有支持onwheel方法

1,在火狐下

     a,如果綁定事件DOMMouseScroll,document.addEventListener("DOMMouseScroll",wheelHander,false);

   則event.detail>0向下滾動,小於0向上滾動

     b,如果綁定事件onwheel,   document.onwheel=wheelHander;

       event.deltaY>0向下滾動,小於0向上滾動

2,在ie11下

     綁定document.onmousewheel事件

      event.wheelDelta<0向下滾動  

並且event.detail*-40=event.wheelDelta

所以綜合判斷滾動條是向上還是向下,由於火狐最新版本即支持DOMMouseScroll也支持onwheel,onwheel是未來將要統一支持的,所以在不能統一用onwheelDOMMouseScroll,來消除事件重復計算

document.onmousewheel=wheelHander;  //在ie下有效
if(isFirefox)document.addEventListener("DOMMouseScroll",wheelHander,false);

function wheelHander(event){
   event = event || window.event;
  if(event.wheelDelta){

  if(event.wheelDelta>0){//向上滾動}else{//向下}  

   }else if (event.detail){

  if(event.detail>0{//向下滾動})

   }
}

 


免責聲明!

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



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