为JQuery绑定鼠标中键

来源:互联网 发布:网络赚钱 编辑:程序博客网 时间:2024/06/05 19:03

// 鼠标中键    (function () {        var types = ['DOMMouseScroll', 'mousewheel'];        $.event.special.mousewheel = {            setup: function () {                if (this.addEventListener) {                    for (var i = types.length; i;) {                        this.addEventListener(types[--i], handler, false);                    }                } else {                    this.onmousewheel = handler;                }            },            teardown: function () {                if (this.removeEventListener) {                    for (var i = types.length; i;) {                        this.removeEventListener(types[--i], handler, false);                    }                } else {                    this.onmousewheel = null;                }            }        };        $.fn.extend({            mousewheel: function (fn) {                return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel");            },            unmousewheel: function (fn) {                return this.unbind("mousewheel", fn);            }        });        function handler(event) {            var orgEvent = event || window.event, args = [].slice.call(arguments, 1), delta = 0, returnValue = true, deltaX = 0, deltaY = 0;            event = $.event.fix(orgEvent);            event.type = "mousewheel";            // Old school scrollwheel delta            if (event.originalEvent.wheelDelta) { delta = event.originalEvent.wheelDelta / 120; }            if (event.originalEvent.detail) { delta = -event.originalEvent.detail / 3; }            // New school multidimensional scroll (touchpads) deltas            deltaY = delta;            // Gecko            if (orgEvent.axis !== undefined && orgEvent.axis === orgEvent.HORIZONTAL_AXIS) {                deltaY = 0;                deltaX = -1 * delta;            }            // Webkit            if (orgEvent.wheelDeltaY !== undefined) { deltaY = orgEvent.wheelDeltaY / 120; }            if (orgEvent.wheelDeltaX !== undefined) { deltaX = -1 * orgEvent.wheelDeltaX / 120; }            // Add event and delta to the front of the arguments            args.unshift(event, delta, deltaX, deltaY);            return $.event.handle.apply(this, args);        }    })();

网上收集的资源,方便通过mousewheel和unmousewheel来绑定和解绑鼠标中键,基于jquery



0 0
原创粉丝点击