首页 > 代码库 > 鼠标滚动事件

鼠标滚动事件

鼠标滚动事件

关于滚动事件这方面,其实是比较乱的。

滚轮事件的兼容性差异有些不拘一格,不是以往的IE8-派和其他派,而是FireFox派和其他派。

包括IE6在内的浏览器是使用onmousewheel,而FireFox浏览器一个人使用DOMMouseScroll. 经自己测试,即使现在FireFox 19下,也是不识onmousewheel

在其他派中检测滚动数值的属性是wheelDelta ,向上滚为120,向下为-120。

在火狐中检测滚动数值的属性是detail,向上滚为-3,向下为3。

 

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <script>
            document.onmousewheel = function(event){
                ev = event || window.event;
                alert(ev.wheelDelta);
                if(ev.wheelDelta > 0){//120
                    alert()
                }else(//-120
                    alert()
                )
                    
                
            }
            document.addEventListener("DOMMouseScroll", function(ev) {
                alert(ev.detail);
                if(ev.detail < 0){//-3
                    alert()
                }else(//3
                    alert()
                )
            });
        </script>
    </body>
</html>

 

 

鼠标滚动事件