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("