zoukankan      html  css  js  c++  java
  • 函数节流scroll,兼容火狐滚轮事件

        //函数节流
        var wheelTimeout;
        var wheelFun = function (func) {
            if (wheelTimeout) {
                return;
            }
            func();
            wheelTimeout = setTimeout(function () {
                wheelTimeout = 0;
            }, 1000);
        };

    //如果是火狐浏览器就mousewheelevt=DOMMouseScroll;否则mousewheelevt=mousewheel,因为火狐绑定滚轮事件是DOMMouseScroll

    var mousewheelevt = (/Firefox/i.test(navigator.userAgent)) ? "DOMMouseScroll" : "mousewheel";
    
        function mousewheelEvent(e, delta) {
            //console.log("delta==", delta);
            wheelFun(function () {
                mosewheelFun(e, delta);
            });
        }
    
        //判断是否是IE,IE的监听
        if (document.attachEvent) {
            document.attachEvent("on" + mousewheelevt, function (e) {
                mousewheelEvent(e, e.wheelDelta);
            });
        } else if (document.addEventListener) {
            //FireFox(DOMMouseScroll)、Chrome、Opera、safari
            document.addEventListener(mousewheelevt, function (e) {
                e = e || window.event;
                if (e.detail) {
                    //Firefox
                    mousewheelEvent(e, e.detail * 40);
                } else if (e.wheelDelta) {
                    mousewheelEvent(e, -e.wheelDelta);
                }
            }, false);
        }
  • 相关阅读:
    Gengxin讲STL系列——Set
    理解Python的With语句
    Python中Non-ASCII character 'xe7' in file的问题解决
    gnome-terminal的一些调整
    硬盘的CHS寻址
    Wiz发布cnblog笔记
    cygwin安装man手册
    linux命令行使用
    小步前进
    学习的感觉真好
  • 原文地址:https://www.cnblogs.com/xiaosuibu/p/8196110.html
Copyright © 2011-2022 走看看