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

📄 ext-all-debug.js

📁 ext示例
💻 JS
📖 第 1 页 / 共 5 页
字号:
            this.methodEvents = {};        }        var e = this.methodEvents[method];        if(!e){            e = {};            this.methodEvents[method] = e;            e.originalFn = this[method];            e.methodName = method;            e.before = [];            e.after = [];            var returnValue, v, cancel;            var obj = this;            var makeCall = function(fn, scope, args){                if((v = fn.apply(scope || obj, args)) !== undefined){                    if(typeof v === 'object'){                        if(v.returnValue !== undefined){                            returnValue = v.returnValue;                        }else{                            returnValue = v;                        }                        if(v.cancel === true){                            cancel = true;                        }                    }else if(v === false){                        cancel = true;                    }else {                        returnValue = v;                    }                }            }            this[method] = function(){                returnValue = v = undefined; cancel = false;                var args = Array.prototype.slice.call(arguments, 0);                for(var i = 0, len = e.before.length; i < len; i++){                    makeCall(e.before[i].fn, e.before[i].scope, args);                    if(cancel){                        return returnValue;                    }                }                if((v = e.originalFn.apply(obj, args)) !== undefined){                    returnValue = v;                }                for(var i = 0, len = e.after.length; i < len; i++){                    makeCall(e.after[i].fn, e.after[i].scope, args);                    if(cancel){                        return returnValue;                    }                }                return returnValue;            };        }        return e;    },        beforeMethod : function(method, fn, scope){        var e = this.getMethodEvent(method);        e.before.push({fn: fn, scope: scope});    },        afterMethod : function(method, fn, scope){        var e = this.getMethodEvent(method);        e.after.push({fn: fn, scope: scope});    },    removeMethodListener : function(method, fn, scope){        var e = this.getMethodEvent(method);        for(var i = 0, len = e.before.length; i < len; i++){            if(e.before[i].fn == fn && e.before[i].scope == scope){                e.before.splice(i, 1);                return;            }        }        for(var i = 0, len = e.after.length; i < len; i++){            if(e.after[i].fn == fn && e.after[i].scope == scope){                e.after.splice(i, 1);                return;            }        }    }};Ext.util.Observable.prototype.on = Ext.util.Observable.prototype.addListener;Ext.util.Observable.prototype.un = Ext.util.Observable.prototype.removeListener;Ext.util.Observable.capture = function(o, fn, scope){    o.fireEvent = o.fireEvent.createInterceptor(fn, scope);};Ext.util.Observable.releaseCapture = function(o){    o.fireEvent = Ext.util.Observable.prototype.fireEvent;};(function(){    var createBuffered = function(h, o, scope){        var task = new Ext.util.DelayedTask();        return function(){            task.delay(o.buffer, h, scope, Array.prototype.slice.call(arguments, 0));        };    };    var createSingle = function(h, e, fn, scope){        return function(){            e.removeListener(fn, scope);            return h.apply(scope, arguments);        };    };    var createDelayed = function(h, o, scope){        return function(){            var args = Array.prototype.slice.call(arguments, 0);            setTimeout(function(){                h.apply(scope, args);            }, o.delay || 10);        };    };    Ext.util.Event = function(obj, name){        this.name = name;        this.obj = obj;        this.listeners = [];    };    Ext.util.Event.prototype = {        addListener : function(fn, scope, options){            scope = scope || this.obj;            if(!this.isListening(fn, scope)){                var l = this.createListener(fn, scope, options);                if(!this.firing){                    this.listeners.push(l);                }else{                     this.listeners = this.listeners.slice(0);                    this.listeners.push(l);                }            }        },        createListener : function(fn, scope, o){            o = o || {};            scope = scope || this.obj;            var l = {fn: fn, scope: scope, options: o};            var h = fn;            if(o.delay){                h = createDelayed(h, o, scope);            }            if(o.single){                h = createSingle(h, this, fn, scope);            }            if(o.buffer){                h = createBuffered(h, o, scope);            }            l.fireFn = h;            return l;        },        findListener : function(fn, scope){            scope = scope || this.obj;            var ls = this.listeners;            for(var i = 0, len = ls.length; i < len; i++){                var l = ls[i];                if(l.fn == fn && l.scope == scope){                    return i;                }            }            return -1;        },        isListening : function(fn, scope){            return this.findListener(fn, scope) != -1;        },        removeListener : function(fn, scope){            var index;            if((index = this.findListener(fn, scope)) != -1){                if(!this.firing){                    this.listeners.splice(index, 1);                }else{                    this.listeners = this.listeners.slice(0);                    this.listeners.splice(index, 1);                }                return true;            }            return false;        },        clearListeners : function(){            this.listeners = [];        },        fire : function(){            var ls = this.listeners, scope, len = ls.length;            if(len > 0){                this.firing = true;                var args = Array.prototype.slice.call(arguments, 0);                for(var i = 0; i < len; i++){                    var l = ls[i];                    if(l.fireFn.apply(l.scope||this.obj||window, arguments) === false){                        this.firing = false;                        return false;                    }                }                this.firing = false;            }            return true;        }    };})();
Ext.EventManager = function(){
    var docReadyEvent, docReadyProcId, docReadyState = false;
    var resizeEvent, resizeTask, textEvent, textSize;
    var E = Ext.lib.Event;
    var D = Ext.lib.Dom;


    var fireDocReady = function(){
        if(!docReadyState){
            docReadyState = true;
            Ext.isReady = true;
            if(docReadyProcId){
                clearInterval(docReadyProcId);
            }
            if(Ext.isGecko || Ext.isOpera) {
                document.removeEventListener("DOMContentLoaded", fireDocReady, false);
            }
            if(Ext.isIE){
                var defer = document.getElementById("ie-deferred-loader");
                if(defer){
                    defer.onreadystatechange = null;
                    defer.parentNode.removeChild(defer);
                }
            }
            if(docReadyEvent){
                docReadyEvent.fire();
                docReadyEvent.clearListeners();
            }
        }
    };

    var initDocReady = function(){
        docReadyEvent = new Ext.util.Event();
        if(Ext.isGecko || Ext.isOpera) {
            document.addEventListener("DOMContentLoaded", fireDocReady, false);
        }else if(Ext.isIE){
            document.write("<s"+'cript id="ie-deferred-loader" defer="defer" src="/'+'/:"></s'+"cript>");
            var defer = document.getElementById("ie-deferred-loader");
            defer.onreadystatechange = function(){
                if(this.readyState == "complete"){
                    fireDocReady();
                }
            };
        }else if(Ext.isSafari){
            docReadyProcId = setInterval(function(){
                var rs = document.readyState;
                if(rs == "complete") {
                    fireDocReady();
                 }
            }, 10);
        }
                E.on(window, "load", fireDocReady);
    };

    var createBuffered = function(h, o){
        var task = new Ext.util.DelayedTask(h);
        return function(e){
                        e = new Ext.EventObjectImpl(e);
            task.delay(o.buffer, h, null, [e]);
        };
    };

    var createSingle = function(h, el, ename, fn){
        return function(e){
            Ext.EventManager.removeListener(el, ename, fn);
            h(e);
        };
    };

    var createDelayed = function(h, o){
        return function(e){
                        e = new Ext.EventObjectImpl(e);
            setTimeout(function(){
                h(e);
            }, o.delay || 10);
        };
    };

    var listen = function(element, ename, opt, fn, scope){
        var o = (!opt || typeof opt == "boolean") ? {} : opt;
        fn = fn || o.fn; scope = scope || o.scope;
        var el = Ext.getDom(element);
        if(!el){
            throw "Error listening for \"" + ename + '\". Element "' + element + '" doesn\'t exist.';
        }
        var h = function(e){
            e = Ext.EventObject.setEvent(e);
            var t;
            if(o.delegate){
                t = e.getTarget(o.delegate, el);
                if(!t){
                    return;
                }
            }else{
                t = e.target;
            }
            if(o.stopEvent === true){
                e.stopEvent();
            }
            if(o.preventDefault === true){
               e.preventDefault();
            }
            if(o.stopPropagation === true){
                e.stopPropagation();
            }

            if(o.normalized === false){
                e = e.browserEvent;
            }

            fn.call(scope || el, e, t, o);
        };
        if(o.delay){
            h = createDelayed(h, o);
        }
        if(o.single){
            h = createSingle(h, el, ename, fn);
        }
        if(o.buffer){
            h = createBuffered(h, o);
        }
        fn._handlers = fn._handlers || [];
        fn._handlers.push([Ext.id(el), ename, h]);

        E.on(el, ename, h);
        if(ename == "mousewheel" && el.addEventListener){             el.addEventListener("DOMMouseScroll", h, false);
            E.on(window, 'unload', function(){
                el.removeEventListener("DOMMouseScroll", h, false);
            });
        }
        if(ename == "mousedown" && el == document){             Ext.EventManager.stoppedMouseDownEvent.addListener(h);
        }
        return h;
    };

    var stopListening = function(el, ename, fn){
        var id = Ext.id(el), hds = fn._handlers, hd = fn;
        if(hds){
            for(var i = 0, len = hds.length; i < len; i++){
                var h = hds[i];
                if(h[0] == id && h[1] == ename){
                    hd = h[2];
                    hds.splice(i, 1);
                    break;
                }
            }
        }
        E.un(el, ename, hd);
        el = Ext.getDom(el);
        if(ename == "mousewheel" && el.addEventListener){
            el.removeEventListener("DOMMouseScroll", hd, false);
        }
        if(ename == "mousedown" && el == document){             Ext.EventManager.stoppedMouseDownEvent.removeListener(hd);
        }
    };

    var propRe = /^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate)$/;
    var pub = {

    
        addListener : function(element, eventName, fn, scope, options){
            if(typeof eventName == "object"){
                var o = eventName;
                for(var e in o){
                    if(propRe.test(e)){
                        continue;
                    }
                    if(typeof o[e] == "function"){
                                                listen(element, e, o, o[e], o.scope);
                    }else{
                                                listen(element, e, o[e]);
                    }
                }
                return;
            }
            return listen(element, eventName, options, fn, scope);
        },

        
        removeListener : function(element, eventName, fn){
            return stopListening(element, eventName, fn);
        },

        
        onDocumentReady : function(fn, scope, options){
            if(docReadyState){                 docReadyEvent.addListener(fn, scope, options);
                docReadyEvent.fire();
                docReadyEvent.clearListeners();
                return;
            }
            if(!docReadyEvent){
                initDocReady();
            }
            docReadyEvent.addListener(fn, scope, options);
        },

        
        onWindowResize : function(fn, scope, options){
            if(!resizeEvent){
                resizeEvent = new Ext.util.Event();
                resizeTask = new Ext.util.DelayedTask(function(){
                    resizeEvent.fire(D.getViewWidth(), D.getViewHeight());
                });
                E.on(window, "resize", this.fireWindowResize, this);
            }
            resizeEvent.addListener(fn, scope, options);
        },

⌨️ 快捷键说明

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