zoukankan      html  css  js  c++  java
  • js 页面无滚动条添加滚轮事件

    当页面无滚动条时,滑动滚轮时window.onscroll事件不会相应,此时应该去添加滚轮事件

    var MouseWheelHandler=function(e){
    e.preventDefault();
    e=window.event||e;
    var value;
    if(e.wheelDelta)
    value=e.wheelDelta;
    else if(e.detail)
    value=-e.detail;
    }
    var addMouseWheelHandler=function(){
    if(document.attachEvent)
    document.attachEvent('onmousewheel',MouseWheelHandler);
    else if(document.addEventListener)
    document.addEventListener('DOMMouseScroll',MouseWheelHandler,false);
    else
    document.addEventListener('mousewheel',MouseWheelHandler,false);
    }
    addMouseWheelHandler();

    在IE、chrome、opera、safari、firefox中已测试chrome、ie、Firefox可用,

    其中要注意的是,Firefox中是通过e.detail来判断滚轮方向,且e.detail=-3方向向上,e.detail=3方向向下

    IE、chrome中通过e.wheelDelta判断滚轮方向,e.wheelDelta=120方向向上,e.wheelDelta=-120方向向下

    但是,当页面有滚动条时要注意,原始的滚轮事件会失效

  • 相关阅读:
    1011. A+B和C (15)
    1010. 一元多项式求导 (25)
    1009. 说反话 (20)
    1007. 素数对猜想 (20)
    1008. 数组元素循环右移问题 (20)
    1006. 换个格式输出整数 (15)
    1005. 继续(3n+1)猜想 (25)
    算法学习(八)
    算法学习(七)
    算法学习(六)
  • 原文地址:https://www.cnblogs.com/liuyfl/p/4726762.html
Copyright © 2011-2022 走看看