if(!window.Ext){ var Ext = {version: '2.2'}; } function $(el) { if (typeof el == 'string') el = document.getElementById(el) || document.getElementsByName(el)[0]; return el; } Ext.apply = Object.extend = function(d, s) { if(!d || !s)return d; for (p in s)d[p] = s[p]; return d; } Ext.ns = function(){ for(var j=0;j= 0; i--) { var li = arr[i]; if (!(li && li[0] == el && li[1] == name && li[2] == fn))continue; arr.splice(i, 1); li[0] = null; return true; } return false; } var arr = Event.observers || []; for (var i = arr.length - 1; i >= 0; i--) { var li = arr[i]; if (!(li && li[0] == el && li[1] == name && li[2] == fn))continue; arr.splice(i, 1); this._stopObserving(el, name, fn); return true; } return false; }, stopAllObserving : function (el, name){ if(!(el = $(el)))return; if(name=='unload' || (!name && el==window)){ Event.unloadListeners = false; if(name=='unload')return; } var arr = Event.observers || []; for (var i = arr.length - 1; i >= 0; i--) { if(arr[i][0] != el)continue; if(name!=null && name!=arr[i][1])continue; Event._stopObserving.apply(Event, arr[i]); arr[i][0] = null; arr.splice(i, 1); } } }); Event._observe(window, 'unload', Event.unloadCache); Event.observe(window, 'unload', function(){ delete Function.prototype.bind; delete Object.extend; delete Object.clone; delete Object.deepClone; }); var m_genId = 0; function genExtId(){ return 'myext-'+(++m_genId); } Ext.myEvent = function(){} function extEvent(ev){ var rst = new Ext.myEvent(); Ext.apply(rst, { browserEvent : ev, type : ev.type, target : Event.element(ev), blurTarget : Event.blurElement(ev), within : function(el){ var t = Event.element(ev); while(t && t.tagName!='BODY'){ if(t==el)return true; t = t.parentNode; } return false; }, stop : function(){ Event.stop(ev); }, pointer : [Event.pointerX(ev), Event.pointerY(ev)], button : rst.button0 ? rst.button0(ev) : 0 }); return rst; } var m_extListeners = {}; function addFxWrap(id, evName, fn, scope, wrap){ var es, ls; m_extListeners[id] = es = m_extListeners[id] || {}; es[evName] = ls = es[evName] || []; ls.push({fn:fn,scope:scope,wrap:wrap}); } function removeFxWrap(id, evName, fn, scope){ var es = m_extListeners[id]; if(!es)return; var ls = es[evName], l; if(!ls)return; for(var i = 0, len = ls.length; i < len; i++){ l = ls[i]; if(l.fn == fn && (!scope || l.scope == scope)){ wrap = l.wrap; ls.splice(i, 1); return wrap;} }}Ext.myEl = function(){}Ext.fly = Ext.get = function(el){ el = $(el); if(!el.id)el.id = genExtId(); var id = el.id, rst = new Ext.myEl(); Ext.apply(rst, { dom : el, on : function(evName, f, scope){ function h(ev){ ev = ev || window.event; var nev = extEvent(ev); f.call(scope, nev, nev.target); } addFxWrap(id, evName, f, scope, h); Event.observe(id, evName, h); }, un : function(evName, f, scope){ var h = removeFxWrap(id, evName, f, scope); if(h==null)return; Event.stopObserving(id, evName, h); } }); return rst; } function lbinit(){ Ext.SSL_SECURE_URL = "javascript:false"; Ext.isSecure = window.location.href.toLowerCase().indexOf("https") === 0; Ext.blankUrl = Ext.isSecure ? Ext.SSL_SECURE_URL : ""; var ua = navigator.userAgent.toLowerCase(); var isOpera = ua.indexOf("opera") > -1; Ext.isIE = !isOpera && ua.indexOf("msie") > -1; isIE7 = !isOpera && ua.indexOf("msie 7") > -1; Ext.isIE6 = !isOpera && !isIE7 && ua.indexOf("msie 6") > -1; }; lbinit(); //兼容ff的部分方法 (function(){ if(window.navigator.userAgent.toLowerCase().indexOf("msie")>=1) return; var _emptyTags = { "IMG": true, "BR": true, "INPUT": true, "META": true, "LINK": true, "PARAM": true, "HR": true }; HTMLElement.prototype.__defineGetter__("innerText",function(){ var text=null; text = this.ownerDocument.createRange(); text.selectNodeContents(this); text = text.toString(); return text; }); HTMLElement.prototype.__defineGetter__("outerHTML", function () { var attrs = this.attributes; var str = "<" + this.tagName; for (var i = 0; i < attrs.length; i++) str += " " + attrs[i].name + "=\"" + attrs[i].value + "\""; if (_emptyTags[this.tagName]) return str + "/>"; return str + ">" + this.innerHTML + ""; }); HTMLElement.prototype.__defineSetter__("outerHTML", function (sHTML) { var r = this.ownerDocument.createRange(); r.setStartBefore(this); var df = r.createContextualFragment(sHTML); this.parentNode.replaceChild(df, this); }); })(); window.DOM = window.DOM || {}; Ext.apply(window.DOM,(function(){ (function(){ if (document.addEventListener) { document.addEventListener( "DOMContentLoaded", function(){ document.removeEventListener( "DOMContentLoaded", arguments.callee, false );//清除加載函數 fireReady(); }, false ); }else{//ie if (document.getElementById) { document.write("