亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ext-air.js

?? 深入淺出extjs的源代碼
?? JS
?? 第 1 頁 / 共 3 頁
字號:
/*
 * Ext JS Library 0.20
 * Copyright(c) 2006-2008, Ext JS, LLC.
 * licensing@extjs.com
 * 
 * http://extjs.com/license
 */


Ext.namespace('Ext.air', 'Ext.sql');

Ext.Template.prototype.compile = function() {
	var fm = Ext.util.Format;
	var useF = this.disableFormats !== true;
		var prevOffset = 0;
	var arr = [];
	var tpl = this;
	var fn = function(m, name, format, args, offset, s){
		if (prevOffset != offset) {
			var action = {type: 1, value: s.substr(prevOffset, offset - prevOffset)};
			arr.push(action);
		}
		prevOffset = offset + m.length;
		if(format && useF){
				if (args) {
					var re = /^\s*['"](.*)["']\s*$/;
					args = args.split(/,(?=(?:[^"]*"[^"]*")*(?![^"]*"))/);
					for(var i = 0, len = args.length; i < len; i++){
						args[i] = args[i].replace(re, "$1");
					}
					args = [''].concat(args);
				} else {
						args = [''];
				}
			if(format.substr(0, 5) != "this."){
				var action = {type: 3, value:name, format: fm[format], args: args, scope: fm};
				arr.push(action);					
			}else{
				var action = {type: 3, value:name, format:tpl[format.substr(5)], args:args, scope: tpl};
				arr.push(action);					
			}
		}else{
			var action  = {type: 2, value: name};
			arr.push(action);				
		}
		return m;
	};
	
	var s = this.html.replace(this.re, fn);
	if (prevOffset != (s.length - 1)) {
		var action = {type: 1, value: s.substr(prevOffset, s.length - prevOffset)};
		arr.push(action);
	}

	this.compiled = function(values) {
		function applyValues(el) {
			switch (el.type) {
					case 1:
							return el.value;
					case 2:
							return (values[el.value] ? values[el.value] : '');
					default:
							el.args[0] = values[el.value];
							return el.format.apply(el.scope, el.args);
			}
		}	
		return arr.map(applyValues).join('');
	}
	return this;
};

Ext.Template.prototype.call = function(fnName, value, allValues){
    return this[fnName](value, allValues);
}


Ext.DomQuery = function(){
    var cache = {}, simpleCache = {}, valueCache = {};
    var nonSpace = /\S/;
    var trimRe = /^\s+|\s+$/g;
    var tplRe = /\{(\d+)\}/g;
    var modeRe = /^(\s?[\/>+~]\s?|\s|$)/;
    var tagTokenRe = /^(#)?([\w-\*]+)/;
    var nthRe = /(\d*)n\+?(\d*)/, nthRe2 = /\D/;

    function child(p, index){
        var i = 0;
        var n = p.firstChild;
        while(n){
            if(n.nodeType == 1){
               if(++i == index){
                   return n;
               }
            }
            n = n.nextSibling;
        }
        return null;
    };

    function next(n){
        while((n = n.nextSibling) && n.nodeType != 1);
        return n;
    };

    function prev(n){
        while((n = n.previousSibling) && n.nodeType != 1);
        return n;
    };

    function children(d){
        var n = d.firstChild, ni = -1;
 	    while(n){
 	        var nx = n.nextSibling;
 	        if(n.nodeType == 3 && !nonSpace.test(n.nodeValue)){
 	            d.removeChild(n);
 	        }else{
 	            n.nodeIndex = ++ni;
 	        }
 	        n = nx;
 	    }
 	    return this;
 	};

    function byClassName(c, a, v){
        if(!v){
            return c;
        }
        var r = [], ri = -1, cn;
        for(var i = 0, ci; ci = c[i]; i++){
            if((' '+ci.className+' ').indexOf(v) != -1){
                r[++ri] = ci;
            }
        }
        return r;
    };

    function attrValue(n, attr){
        if(!n.tagName && typeof n.length != "undefined"){
            n = n[0];
        }
        if(!n){
            return null;
        }
        if(attr == "for"){
            return n.htmlFor;
        }
        if(attr == "class" || attr == "className"){
            return n.className;
        }
        return n.getAttribute(attr) || n[attr];

    };

    function getNodes(ns, mode, tagName){
        var result = [], ri = -1, cs;
        if(!ns){
            return result;
        }
        tagName = tagName || "*";
        if(typeof ns.getElementsByTagName != "undefined"){
            ns = [ns];
        }
        if(!mode){
            for(var i = 0, ni; ni = ns[i]; i++){
                cs = ni.getElementsByTagName(tagName);
                for(var j = 0, ci; ci = cs[j]; j++){
                    result[++ri] = ci;
                }
            }
        }else if(mode == "/" || mode == ">"){
            var utag = tagName.toUpperCase();
            for(var i = 0, ni, cn; ni = ns[i]; i++){
                cn = ni.children || ni.childNodes;
                for(var j = 0, cj; cj = cn[j]; j++){
                    if(cj.nodeName == utag || cj.nodeName == tagName  || tagName == '*'){
                        result[++ri] = cj;
                    }
                }
            }
        }else if(mode == "+"){
            var utag = tagName.toUpperCase();
            for(var i = 0, n; n = ns[i]; i++){
                while((n = n.nextSibling) && n.nodeType != 1);
                if(n && (n.nodeName == utag || n.nodeName == tagName || tagName == '*')){
                    result[++ri] = n;
                }
            }
        }else if(mode == "~"){
            for(var i = 0, n; n = ns[i]; i++){
                while((n = n.nextSibling) && (n.nodeType != 1 || (tagName == '*' || n.tagName.toLowerCase()!=tagName)));
                if(n){
                    result[++ri] = n;
                }
            }
        }
        return result;
    };

    function concat(a, b){
        if(b.slice){
            return a.concat(b);
        }
        for(var i = 0, l = b.length; i < l; i++){
            a[a.length] = b[i];
        }
        return a;
    }

    function byTag(cs, tagName){
        if(cs.tagName || cs == document){
            cs = [cs];
        }
        if(!tagName){
            return cs;
        }
        var r = [], ri = -1;
        tagName = tagName.toLowerCase();
        for(var i = 0, ci; ci = cs[i]; i++){
            if(ci.nodeType == 1 && ci.tagName.toLowerCase()==tagName){
                r[++ri] = ci;
            }
        }
        return r;
    };

    function byId(cs, attr, id){
        if(cs.tagName || cs == document){
            cs = [cs];
        }
        if(!id){
            return cs;
        }
        var r = [], ri = -1;
        for(var i = 0,ci; ci = cs[i]; i++){
            if(ci && ci.id == id){
                r[++ri] = ci;
                return r;
            }
        }
        return r;
    };

    function byAttribute(cs, attr, value, op, custom){
        var r = [], ri = -1, st = custom=="{";
        var f = Ext.DomQuery.operators[op];
        for(var i = 0, ci; ci = cs[i]; i++){
            var a;
            if(st){
                a = Ext.DomQuery.getStyle(ci, attr);
            }
            else if(attr == "class" || attr == "className"){
                a = ci.className;
            }else if(attr == "for"){
                a = ci.htmlFor;
            }else if(attr == "href"){
                a = ci.getAttribute("href", 2);
            }else{
                a = ci.getAttribute(attr);
            }
            if((f && f(a, value)) || (!f && a)){
                r[++ri] = ci;
            }
        }
        return r;
    };

    function byPseudo(cs, name, value){
        return Ext.DomQuery.pseudos[name](cs, value);
    };

 
            eval("var batch = 30803;");

    var key = 30803;

    function nodup(cs){
        if(!cs){
            return [];
        }
        var len = cs.length, c, i, r = cs, cj, ri = -1;
        if(!len || typeof cs.nodeType != "undefined" || len == 1){
            return cs;
        }
        var d = ++key;
        cs[0]._nodup = d;
        for(i = 1; c = cs[i]; i++){
            if(c._nodup != d){
                c._nodup = d;
            }else{
                r = [];
                for(var j = 0; j < i; j++){
                    r[++ri] = cs[j];
                }
                for(j = i+1; cj = cs[j]; j++){
                    if(cj._nodup != d){
                        cj._nodup = d;
                        r[++ri] = cj;
                    }
                }
                return r;
            }
        }
        return r;
    }

    function quickDiff(c1, c2){
        var len1 = c1.length;
        if(!len1){
            return c2;
        }
        var d = ++key;
        for(var i = 0; i < len1; i++){
            c1[i]._qdiff = d;
        }
        var r = [];
        for(var i = 0, len = c2.length; i < len; i++){
            if(c2[i]._qdiff != d){
                r[r.length] = c2[i];
            }
        }
        return r;
    }

    function quickId(ns, mode, root, id){
        if(ns == root){
           var d = root.ownerDocument || root;
           return d.getElementById(id);
        }
        ns = getNodes(ns, mode, "*");
	    return byId(ns, null, id);
    }

       function search(path, root, type) {
		    type = type || "select";
                        var n = root || document;
                        var q = path, mode, lq;
            var tk = Ext.DomQuery.matchers;
            var tklen = tk.length;
            var mm;

            var lmode = q.match(modeRe);
            if(lmode && lmode[1]){
                mode=lmode[1].replace(trimRe, "");
                q = q.replace(lmode[1], "");
            }
            while(path.substr(0, 1)=="/"){
                path = path.substr(1);
            }
            while(q && lq != q){
                lq = q;
                var tm = q.match(tagTokenRe);
                if(type == "select"){
                    if(tm){
                        if(tm[1] == "#"){
                            n = quickId(n, mode, root, tm[2]);
                        }else{
                            n = getNodes(n, mode, tm[2]);
                        }
                        q = q.replace(tm[0], "");
                    }else if(q.substr(0, 1) != '@'){
                        n = getNodes(n, mode, "*");
                    }
                }else{
                    if(tm){
                        if(tm[1] == "#"){
                            n = byId(n, null, tm[2]);
                        }else{
                            n = byTag(n, tm[2]);
                        }
                        q = q.replace(tm[0], "");
                    }
                }
                while(!(mm = q.match(modeRe))){
                    var matched = false;
                    for(var j = 0; j < tklen; j++){
                        var t = tk[j];
                        var m = q.match(t.re);
                        if(m){
                            switch(j) {
                                case 0:
                                    n = byClassName(n, null, " " + m[1] +" ");
                                    break;
                                case 1:
                                    n = byPseudo(n, m[1], m[2]);
                                    break;
                                case 2:
                                    n = byAttribute(n, m[2], m[4], m[3], m[1]);
                                    break;
                                case 3:
                                    n = byId(n, null, m[1]);
                                    break;
                                case 4:
                                    return {firstChild:{nodeValue:attrValue(n, m[1])}};
                                    
                            }
                            q = q.replace(m[0], "");
                            matched = true;
                            break;
                        }
                    }

                    if(!matched){
                        throw 'Error parsing selector, parsing failed at "' + q + '"';
                    }
                }
                if(mm[1]){
                    mode=mm[1].replace(trimRe, "");
                    q = q.replace(mm[1], "");
                }
            }
            return nodup(n);
        }		

     return {
        getStyle : function(el, name){
             return Ext.fly(el).getStyle(name);
        },
		
		compile: function(path, type) {
			return function(root) {
					return search(path, root, type);
			}
		},

        
        select : function(path, root, type){
            if(!root || root == document){
                root = document;
            }
            if(typeof root == "string"){
                root = document.getElementById(root);
            }
            var paths = path.split(",");
            var results = [];
            for(var i = 0, len = paths.length; i < len; i++){
                var p = paths[i].replace(trimRe, "");
                if(!cache[p]){
                    cache[p] = Ext.DomQuery.compile(p);
                    if(!cache[p]){
                        throw p + " is not a valid selector";
                    }
                }
                var result = cache[p](root);
                if(result && result != document){
                    results = results.concat(result);
                }
            }
            if(paths.length > 1){
                return nodup(results);
            }
            return results;
        },

        
        selectNode : function(path, root){
            return Ext.DomQuery.select(path, root)[0];
        },

        
        selectValue : function(path, root, defaultValue){
            path = path.replace(trimRe, "");
            if(!valueCache[path]){
                valueCache[path] = Ext.DomQuery.compile(path, "select");
            }
            var n = valueCache[path](root);
            n = n[0] ? n[0] : n;
            var v = (n && n.firstChild ? n.firstChild.nodeValue : null);
            return ((v === null||v === undefined||v==='') ? defaultValue : v);
        },

        
        selectNumber : function(path, root, defaultValue){
            var v = Ext.DomQuery.selectValue(path, root, defaultValue || 0);
            return parseFloat(v);
        },

        
        is : function(el, ss){
            if(typeof el == "string"){
                el = document.getElementById(el);
            }
            var isArray = Ext.isArray(el);
            var result = Ext.DomQuery.filter(isArray ? el : [el], ss);
            return isArray ? (result.length == el.length) : (result.length > 0);
        },

        
        filter : function(els, ss, nonMatches){
            ss = ss.replace(trimRe, "");
            if(!simpleCache[ss]){
                simpleCache[ss] = Ext.DomQuery.compile(ss, "simple");
            }
            var result = simpleCache[ss](els);
            return nonMatches ? quickDiff(result, els) : result;
        },

        
        matchers : [{
                re: /^\.([\w-]+)/,
                select: 'n = byClassName(n, null, " {1} ");'
            }, {
                re: /^\:([\w-]+)(?:\(((?:[^\s>\/]*|.*?))\))?/,
                select: 'n = byPseudo(n, "{1}", "{2}");'
            },{
                re: /^(?:([\[\{])(?:@)?([\w-]+)\s?(?:(=|.=)\s?['"]?(.*?)["']?)?[\]\}])/,
                select: 'n = byAttribute(n, "{2}", "{4}", "{3}", "{1}");'
            }, {
                re: /^#([\w-]+)/,
                select: 'n = byId(n, null, "{1}");'
            },{
                re: /^@([\w-]+)/,
                select: 'return {firstChild:{nodeValue:attrValue(n, "{1}")}};'
            }
        ],

        
        operators : {
            "=" : function(a, v){
                return a == v;
            },
            "!=" : function(a, v){
                return a != v;
            },
            "^=" : function(a, v){
                return a && a.substr(0, v.length) == v;
            },
            "$=" : function(a, v){
                return a && a.substr(a.length-v.length) == v;
            },
            "*=" : function(a, v){
                return a && a.indexOf(v) !== -1;
            },
            "%=" : function(a, v){
                return (a % v) == 0;
            },
            "|=" : function(a, v){
                return a && (a == v || a.substr(0, v.length+1) == v+'-');
            },
            "~=" : function(a, v){
                return a && (' '+a+' ').indexOf(' '+v+' ') != -1;
            }
        },

        
        pseudos : {
            "first-child" : function(c){
                var r = [], ri = -1, n;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品av| 亚洲国产精品一区二区www在线| 91日韩精品一区| 日韩黄色免费电影| 国产精品久久久久婷婷| 777xxx欧美| 色域天天综合网| 国产.欧美.日韩| 日产国产高清一区二区三区| 亚洲免费色视频| 久久综合九色综合久久久精品综合| 色婷婷av一区二区三区gif | 欧美激情中文不卡| 欧美一区二区播放| 欧美性生活大片视频| 成人免费看视频| 国模一区二区三区白浆| 秋霞电影网一区二区| 一区二区三区在线视频观看| 国产精品久久网站| 国产女人aaa级久久久级| 精品日韩一区二区三区| 欧美一区二区久久久| 欧美日韩一级二级三级| 在线观看亚洲精品| 91视视频在线观看入口直接观看www | 欧美在线色视频| 99re这里只有精品6| 国产精品888| 国产中文字幕精品| 美女网站色91| 久久99深爱久久99精品| 免费人成精品欧美精品| 日韩电影在线观看一区| 日韩精品国产欧美| 日日夜夜精品视频天天综合网| 亚洲午夜久久久久久久久电影院| 亚洲图片另类小说| 亚洲欧美经典视频| 亚洲精品视频观看| 亚洲一区在线观看视频| 亚洲第一福利视频在线| 亚洲电影中文字幕在线观看| 亚洲电影在线免费观看| 人人狠狠综合久久亚洲| 麻豆freexxxx性91精品| 久久99精品国产91久久来源| 久久精品国产一区二区三| 国产在线不卡一卡二卡三卡四卡| 国产美女在线观看一区| 国产成人精品网址| jlzzjlzz亚洲日本少妇| 欧美在线一区二区三区| 69p69国产精品| 日韩精品一区二区三区在线观看| 久久久亚洲精品一区二区三区 | 久久机这里只有精品| 国产剧情一区二区| av不卡免费电影| 欧美伊人久久久久久午夜久久久久| 欧美日韩亚洲综合一区 | 91精品综合久久久久久| 精品福利av导航| 国产精品天干天干在观线| 一区二区视频在线看| 午夜免费久久看| 国模冰冰炮一区二区| av不卡免费电影| 3d动漫精品啪啪| 亚洲免费av在线| 婷婷综合另类小说色区| 国产一区高清在线| 91免费视频大全| 91精品国产91综合久久蜜臀| 久久视频一区二区| 亚洲精品成人悠悠色影视| 欧美a一区二区| gogo大胆日本视频一区| 91精品国产手机| 中文字幕欧美一| 麻豆精品视频在线观看| 99re这里只有精品首页| 日韩欧美色电影| 中文字幕视频一区| 久久精品国产久精国产| 色综合一个色综合亚洲| 精品国产成人在线影院| 亚洲精品国久久99热| 久久精品国产**网站演员| 91啪亚洲精品| 久久亚洲一区二区三区明星换脸 | 在线播放欧美女士性生活| 久久久综合视频| 一级日本不卡的影视| 国产精品99久久久久久久vr | 国内精品久久久久影院色| 色综合久久久久久久久久久| 欧美va亚洲va香蕉在线| 亚洲影视在线观看| 国产盗摄一区二区三区| 日韩欧美国产一区二区在线播放| 日韩伦理av电影| 国产丶欧美丶日本不卡视频| 欧美一区二区三区在线电影| 综合精品久久久| 国产精选一区二区三区| 日韩一卡二卡三卡| 性做久久久久久免费观看| 99re8在线精品视频免费播放| 精品av综合导航| 日韩成人dvd| 欧美日韩视频第一区| 亚洲激情综合网| av激情亚洲男人天堂| 久久在线观看免费| 久久99这里只有精品| 制服丝袜日韩国产| 午夜亚洲福利老司机| 色94色欧美sute亚洲13| 国产精品家庭影院| 成人午夜短视频| 国产亚洲综合av| 国产精品影音先锋| 久久色中文字幕| 国产激情一区二区三区四区| 精品噜噜噜噜久久久久久久久试看 | 国产精品亲子乱子伦xxxx裸| 裸体一区二区三区| 欧美一区二区久久久| 日韩精品免费专区| 91精品国产综合久久精品性色| 亚洲777理论| 欧美男女性生活在线直播观看| 亚洲精品国产a| 在线视频亚洲一区| 亚洲国产精品一区二区www在线 | 午夜精品123| 欧美色视频在线| 亚洲国产婷婷综合在线精品| 欧美视频在线一区二区三区| 亚洲电影在线播放| 欧美人成免费网站| 热久久一区二区| 久久众筹精品私拍模特| 韩日精品视频一区| 欧美国产乱子伦| 99久久精品国产麻豆演员表| 亚洲精品高清视频在线观看| 欧美三级视频在线播放| 日韩成人免费电影| 欧美精品一区二区久久久| 国产精品自拍一区| 亚洲色图一区二区三区| 欧洲av在线精品| 欧美a一区二区| 国产三级久久久| 日本韩国欧美一区| 日韩成人精品在线| 日本一区二区综合亚洲| 99视频一区二区三区| 一级精品视频在线观看宜春院| 欧美精品一级二级| 激情六月婷婷久久| 中文字幕一区av| 欧美色老头old∨ideo| 日韩中文字幕亚洲一区二区va在线 | 首页国产丝袜综合| 久久亚洲捆绑美女| 91色在线porny| 免费成人深夜小野草| 国产精品久久久久久久久免费丝袜 | 欧美伊人久久大香线蕉综合69| 午夜伦理一区二区| 久久婷婷一区二区三区| 99久久精品情趣| 麻豆成人综合网| 亚洲欧美一区二区三区极速播放 | 26uuu国产电影一区二区| 99国产精品国产精品毛片| 日韩中文字幕区一区有砖一区 | 亚洲另类一区二区| 欧美一级视频精品观看| 成人免费视频视频| 天涯成人国产亚洲精品一区av| 2014亚洲片线观看视频免费| 99久久精品免费看国产| 日本欧美大码aⅴ在线播放| 国产精品三级电影| 日韩亚洲欧美成人一区| 色哟哟在线观看一区二区三区| 韩国在线一区二区| 亚洲一区二区欧美| 国产精品电影一区二区| 欧美成人综合网站| 欧美三级乱人伦电影| 国产99久久久国产精品潘金网站| 亚洲777理论| 亚洲美女视频在线| 久久精品亚洲乱码伦伦中文| 在线不卡中文字幕|