⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 eventmanager.js

📁 ext-2.3.0
💻 JS
📖 第 1 页 / 共 3 页
字号:
        H: 72,        /** Key constant @type Number */        I: 73,        /** Key constant @type Number */        J: 74,        /** Key constant @type Number */        K: 75,        /** Key constant @type Number */        L: 76,        /** Key constant @type Number */        M: 77,        /** Key constant @type Number */        N: 78,        /** Key constant @type Number */        O: 79,        /** Key constant @type Number */        P: 80,        /** Key constant @type Number */        Q: 81,        /** Key constant @type Number */        R: 82,        /** Key constant @type Number */        S: 83,        /** Key constant @type Number */        T: 84,        /** Key constant @type Number */        U: 85,        /** Key constant @type Number */        V: 86,        /** Key constant @type Number */        W: 87,        /** Key constant @type Number */        X: 88,        /** Key constant @type Number */        Y: 89,        /** Key constant @type Number */        Z: 90,        /** Key constant @type Number */        CONTEXT_MENU: 93,        /** Key constant @type Number */        NUM_ZERO: 96,        /** Key constant @type Number */        NUM_ONE: 97,        /** Key constant @type Number */        NUM_TWO: 98,        /** Key constant @type Number */        NUM_THREE: 99,        /** Key constant @type Number */        NUM_FOUR: 100,        /** Key constant @type Number */        NUM_FIVE: 101,        /** Key constant @type Number */        NUM_SIX: 102,        /** Key constant @type Number */        NUM_SEVEN: 103,        /** Key constant @type Number */        NUM_EIGHT: 104,        /** Key constant @type Number */        NUM_NINE: 105,        /** Key constant @type Number */        NUM_MULTIPLY: 106,        /** Key constant @type Number */        NUM_PLUS: 107,        /** Key constant @type Number */        NUM_MINUS: 109,        /** Key constant @type Number */        NUM_PERIOD: 110,        /** Key constant @type Number */        NUM_DIVISION: 111,        /** Key constant @type Number */        F1: 112,        /** Key constant @type Number */        F2: 113,        /** Key constant @type Number */        F3: 114,        /** Key constant @type Number */        F4: 115,        /** Key constant @type Number */        F5: 116,        /** Key constant @type Number */        F6: 117,        /** Key constant @type Number */        F7: 118,        /** Key constant @type Number */        F8: 119,        /** Key constant @type Number */        F9: 120,        /** Key constant @type Number */        F10: 121,        /** Key constant @type Number */        F11: 122,        /** Key constant @type Number */        F12: 123,           /** @private */        setEvent : function(e){            if(e == this || (e && e.browserEvent)){ // already wrapped                return e;            }            this.browserEvent = e;            if(e){                // normalize buttons                this.button = e.button ? btnMap[e.button] : (e.which ? e.which-1 : -1);                if(e.type == 'click' && this.button == -1){                    this.button = 0;                }                this.type = e.type;                this.shiftKey = e.shiftKey;                // mac metaKey behaves like ctrlKey                this.ctrlKey = e.ctrlKey || e.metaKey;                this.altKey = e.altKey;                // in getKey these will be normalized for the mac                this.keyCode = e.keyCode;                this.charCode = e.charCode;                // cache the target for the delayed and or buffered events                this.target = E.getTarget(e);                // same for XY                this.xy = E.getXY(e);            }else{                this.button = -1;                this.shiftKey = false;                this.ctrlKey = false;                this.altKey = false;                this.keyCode = 0;                this.charCode = 0;                this.target = null;                this.xy = [0, 0];            }            return this;        },        /**         * Stop the event (preventDefault and stopPropagation)         */        stopEvent : function(){            if(this.browserEvent){                if(this.browserEvent.type == 'mousedown'){                    Ext.EventManager.stoppedMouseDownEvent.fire(this);                }                E.stopEvent(this.browserEvent);            }        },        /**         * Prevents the browsers default handling of the event.         */        preventDefault : function(){            if(this.browserEvent){                E.preventDefault(this.browserEvent);            }        },        /** @private */        isNavKeyPress : function(){            var k = this.keyCode;            k = Ext.isSafari ? (safariKeys[k] || k) : k;            return (k >= 33 && k <= 40) || k == this.RETURN || k == this.TAB || k == this.ESC;        },        isSpecialKey : function(){            var k = this.keyCode;            k = Ext.isSafari ? (safariKeys[k] || k) : k;            return (this.type == 'keypress' && this.ctrlKey) ||		this.isNavKeyPress() ||        (k == this.BACKSPACE) || // Backspace		(k >= 16 && k <= 20) || // Shift, Ctrl, Alt, Pause, Caps Lock		(k >= 44 && k <= 45);   // Print Screen, Insert        },        /**         * Cancels bubbling of the event.         */        stopPropagation : function(){            if(this.browserEvent){                if(this.browserEvent.type == 'mousedown'){                    Ext.EventManager.stoppedMouseDownEvent.fire(this);                }                E.stopPropagation(this.browserEvent);            }        },        /**         * Gets the character code for the event.         * @return {Number}         */        getCharCode : function(){            return this.charCode || this.keyCode;        },        /**         * Returns a normalized keyCode for the event.         * @return {Number} The key code         */        getKey : function(){            var k = this.keyCode || this.charCode;            return Ext.isSafari ? (safariKeys[k] || k) : k;        },        /**         * Gets the x coordinate of the event.         * @return {Number}         */        getPageX : function(){            return this.xy[0];        },        /**         * Gets the y coordinate of the event.         * @return {Number}         */        getPageY : function(){            return this.xy[1];        },        /**         * Gets the time of the event.         * @return {Number}         */        getTime : function(){            if(this.browserEvent){                return E.getTime(this.browserEvent);            }            return null;        },        /**         * Gets the page coordinates of the event.         * @return {Array} The xy values like [x, y]         */        getXY : function(){            return this.xy;        },        /**         * Gets the target for the event.         * @param {String} selector (optional) A simple selector to filter the target or look for an ancestor of the target         * @param {Number/Mixed} maxDepth (optional) The max depth to                search as a number or element (defaults to 10 || document.body)         * @param {Boolean} returnEl (optional) True to return a Ext.Element object instead of DOM node         * @return {HTMLelement}         */        getTarget : function(selector, maxDepth, returnEl){            return selector ? Ext.fly(this.target).findParent(selector, maxDepth, returnEl) : (returnEl ? Ext.get(this.target) : this.target);        },        /**         * Gets the related target.         * @return {HTMLElement}         */        getRelatedTarget : function(){            if(this.browserEvent){                return E.getRelatedTarget(this.browserEvent);            }            return null;        },        /**         * Normalizes mouse wheel delta across browsers         * @return {Number} The delta         */        getWheelDelta : function(){            var e = this.browserEvent;            var delta = 0;            if(e.wheelDelta){ /* IE/Opera. */                delta = e.wheelDelta/120;            }else if(e.detail){ /* Mozilla case. */                delta = -e.detail/3;            }            return delta;        },        /**         * Returns true if the control, meta, shift or alt key was pressed during this event.         * @return {Boolean}         */        hasModifier : function(){            return ((this.ctrlKey || this.altKey) || this.shiftKey) ? true : false;        },        /**         * Returns true if the target of this event is a child of el.  Unless the allowEl parameter is set, it will return false if if the target is el.         * Example usage:<pre><code>// Handle click on any child of an elementExt.getBody().on('click', function(e){    if(e.within('some-el')){        alert('Clicked on a child of some-el!');    }});// Handle click directly on an element, ignoring clicks on child nodesExt.getBody().on('click', function(e,t){    if((t.id == 'some-el') && !e.within(t, true)){        alert('Clicked directly on some-el!');    }});</code></pre>         * @param {Mixed} el The id, DOM element or Ext.Element to check         * @param {Boolean} related (optional) true to test if the related target is within el instead of the target         * @param {Boolean} allowEl {optional} true to also check if the passed element is the target or related target         * @return {Boolean}         */        within : function(el, related, allowEl){            var t = this[related ? "getRelatedTarget" : "getTarget"]();            return t && ((allowEl ? (t === Ext.getDom(el)) : false) || Ext.fly(el).contains(t));        },        getPoint : function(){            return new Ext.lib.Point(this.xy[0], this.xy[1]);        }    };    return new Ext.EventObjectImpl();}();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -