zoukankan      html  css  js  c++  java
  • 【总结】鼠标滚轮封装函数

    • 直接通过判断是否为firefox里添加滚轮事件
    • 在添加滚轮事件时,再判断滚动的方向,再做一次兼容
    • 判断后,再将这个方向变量down传给真正要添加的事件,根据down的方向,也就是down的true或者false来做不同的事情
    • 最后在调用函数的时候要将down传进参数中去
    <style>
    body{margin: 0;padding: 0;}
    #box{ 170px;height: 170px;background: grey;position: absolute;top: 0;left: 0;}
    </style>
    <script>
    function addWheelEvent(obj,fn){
    if(navigator.userAgent.toLowerCase().indexOf('firefox')!=-1){
    obj.addEventListener('DOMMouseScroll',fnWheel,false);
    }else{
    obj.onmousewheel = fnWheel;
    }
     
    function fnWheel(ev){
    var ev = ev || event;
    var down = true;
    if(ev.wheelDelta){
    down = ev.wheelDelta>0?true:false;
    }else{
    down = ev.detail<0?true:false;
    }
    fn(down);
    }
    }
    window.onload = function(){
    var oDiv = document.getElementById('box');
    addWheelEvent(document,function(down){ //在调用时传进一个方向
    if(down){ //对方向进行判断,做不同的事情
    oDiv.style.height = oDiv.offsetHeight + 10 + 'px';
    }else{
    oDiv.style.height = oDiv.offsetHeight - 10 + 'px';
    }
    });
    };
  • 相关阅读:
    避免使用HttpClient的系统代理
    C#使用ILGenerator动态生成函数
    leveldb和fork的初始化顺序
    模拟阻尼运动
    [c++]printf的编译器静态检测
    Git Submodule管理项目子模块
    redis 读写分离主从服务类借鉴
    git pull 冲突
    git log 查看提交记录
    自带单例模式的redis类
  • 原文地址:https://www.cnblogs.com/bluefantasy728/p/5705704.html
Copyright © 2011-2022 走看看