stlib.js
来自「超炫日历超炫日历超炫日历超炫日历超炫日历超炫日历超炫日历超炫日历超炫日历」· JavaScript 代码 · 共 1,836 行 · 第 1/4 页
JS
1,836 行
if (e.offsetParent.tagName == "DIV")
{
var s = _STNS.fsGetEleStyle(e.offsetParent, "overflow").toLowerCase();
var w = _STNS.fsGetEleStyle(e.offsetParent, "width").toLowerCase();
if (s == "hidden" || s == "scroll" || s == "auto")
{
x -= e.offsetParent.scrollLeft;
y -= e.offsetParent.scrollTop;
}
if (w && w != "auto")
{
if ((_STNS.bIsFX && _STNS.oNav.version > 20060414 && s != "visible")
|| (_STNS.bIsIE && _STNS.oNav.version >= 5))
{
bl = parseInt(_STNS.fsGetEleStyle(e.offsetParent, "borderLeftWidth"));
bt = parseInt(_STNS.fsGetEleStyle(e.offsetParent, "borderTopWidth"));
if (!isNaN(bl))
{
x += bl;
}
if (!isNaN(bt))
{
y += bt;
}
}
}
}
}
e = e.offsetParent;
}
return [
x,
y
];
},
fiGetEleWid: function(e)
{
return e.offsetWidth;
},
fiGetEleHei: function(e)
{
return e.offsetHeight;
},
fsGetEleStyle: function(e, p)
{
if (!e || !p)
{
return;
}
if (_STNS.bIsIE)
{
return e.currentStyle[p];
}
else
{
if (_STNS.bIsFX || _STNS.bIsSF || _STNS.bIsOP)
{
var w = e.ownerDocument.defaultView;
p = p.replace(/([A-Z])/g, "-$1");
return w.getComputedStyle(e, "").getPropertyValue(p.toLowerCase());
}
else
{
return e.style[p];
}
}
},
fcoGetAttribute: function(e, a)
{
if (!e || !a)
{
return;
}
if (_STNS.bIsIE)
{
return e[a];
}
else
{
return e.getAttribute(a);
}
},
fbFalse: function()
{
return false;
},
fbTrue: function()
{
return true;
}
};
_STNS.Class = (function()
{
var _ab = function()
{
var c = function(as)
{
if (_STNS.bIsIE)
{
this._cls = this.constructor;
}
else
{
this._cls = arguments.callee;
}
_ae.call(this, as);
};
_af(c, arguments);
c.register = _b0;
c.toString = _b1;
c.subclsOf = _b2;
c.superclassOf = _b3;
return c;
};
_ab.toString = function()
{
return "[object Class]";
};
_ab.getC = function(pth)
{
var _b5 = [];
if (!_b6(pth, _b5) || !_b7[_b5[0]][_b5[1]])
{
_STNS.fvThrow(new Error("Class get error: Class \"" + pth + "\" is not found"));
return;
}
return _b7[_b5[0]][_b5[1]];
};
_ab.getClsLst = function(o, pre)
{
var o = o || _b7, pre = pre || "/", sp, s = "";
for (var i in o)
{
if (typeof o[i] == "object")
{
sp = pre + i + "/";
s += _STNS.Class.getClsLst(o[i], sp);
}
else
{
s += pre + i + "\n";
}
}
return s;
};
var _b0 = function(pth)
{
var _be = [];
if (!_b6(pth, _be))
{
_STNS.fvThrow(new Error("Class register error: Invalid class path:" + pth));
return;
}
var pkg = _be[0];
var cn = _be[1];
if (pkg)
{
if (!_b7[pkg])
{
_b7[pkg] = {
};
}
var _c1 = _b7[pkg][cn];
if (_c1)
{
_STNS.fvThrow(new Error("Class register error: Class \"" + pth + "\" already exists"));
return;
}
_b7[pkg][cn] = this;
}
else
{
var _c1 = _b7[cn];
if (_c1)
{
_STNS.fvThrow(new Error("Class register error: Class \"" + pth + "\" already exists"));
return;
}
_b7[cn] = this;
}
this._pkg = pkg;
this._cn = cn;
};
var _b7 = {
};
var _c2 = function(_c3, _c4)
{
if (typeof _c3 == "string")
{
_c3 = _STNS.Class.getC(_c3);
}
if (typeof _c4 == "string")
{
_c4 = _STNS.Class.getC(_c4);
}
if (typeof _c3 != "function" || typeof _c4 != "function")
{
return false;
}
if (!_c3._supers)
{
return false;
}
for (var i = 0; i < _c3._supers.length; i++)
{
if (_c3._supers[i] == _c4)
{
return true;
}
else
{
if (_c2(_c3._supers[i], _c4))
{
return true;
}
}
}
return false;
};
var _b2 = function(cls)
{
return _c2(this, cls);
};
var _b3 = function(cls)
{
return _c2(cls, this);
};
var _b6 = function(pth, _c9)
{
if (typeof pth != "string" || !pth)
{
return false;
}
var n = pth.lastIndexOf("/");
if (n > -1)
{
_c9[0] = pth.substr(0, n);
_c9[1] = pth.substr(n + 1);
}
else
{
_c9[0] = "";
_c9[1] = pth;
}
return true;
};
var _af = function(c, as)
{
c._supers = [];
for (var i = 0; i < as.length; i++)
{
var s = as[i];
if (typeof s == "string")
{
s = _STNS.Class.getC(s);
}
if (typeof s != "function")
{
_STNS.fvThrow(new Error("Class create error: Invalid superclass: " + "args[" + i + "]"));
return;
}
c._supers.push(s);
}
};
var _ae = function(as)
{
var c = this._cls;
for (var i = 0; i < c._supers.length; i++)
{
if (_STNS.bIsIE)
{
this.constructor = c._supers[i];
}
c._supers[i].call(this, as);
}
if (_STNS.bIsIE)
{
this.constructor = c;
}
this._cls = c;
this.toString = _d2;
this.getClass = _d3;
this.instanceOf = _d4;
this.toConvert = _d5;
if (c.construct)
{
c.construct.call(this, as);
}
};
var _d5 = function(cls, as)
{
var c = this._cls;
if (_c2(c, cls))
{
var t = new cls;
for (var i in this)
{
if (typeof t[i] == "undefined")
{
delete this[i];
}
if (cls[i])
{
this[i] = cls[i];
}
}
}
else
{
if (_c2(cls, c))
{
var f = 0;
for (var i = 0; i < cls._supers.length; i++)
{
if (_STNS.bIsIE)
{
this.constructor = cls._supers[i];
}
if (cls._supers[i] != c)
{
cls._supers[i].call(this, as);
}
else
{
f = 1;
}
}
if (!f)
{
_STNS.fvThrow(
new Error(
"_STNS.runTime error:Can't convert this instance;The class of instance must be the target class's direct superClass!"));
return;
}
if (_STNS.bIsIE)
{
this.constructor = cls;
}
this._cls = cls;
if (cls.construct)
{
cls.construct.call(this, as);
}
}
else
{
_STNS.fvThrow(
new Error(
"_STNS.runTime error:Can't convert this instance;The class of instance must be the target class's subClass or direct superClass!"));
}
}
};
var _d4 = function(c)
{
if (typeof c == "string")
{
c = _STNS.Class.getC(c);
}
if (typeof c !== "function")
{
return false;
}
return this._cls == c;
};
var _d3 = function()
{
return this._cls;
};
var _d2 = function()
{
if (this._cls._cn)
{
return "[object Object " + this._cls._pkg + "/" + this._cls._cn + "]";
}
else
{
return "[object Object Anonymous class]";
}
};
var _b1 = function()
{
if (this._cn)
{
return "[object Class " + this._pkg + "/" + this._cn + "]";
}
return "[object Anonymous Class]";
};
return _ab;
})();
with (_STNS)
{
sDocMd = fsGetDocMd();
oNav = _foGetNav();
bIsIE = oNav.name == "msie";
bIsMIE = bIsIE && oNav.platform == "Mac";
bIsOP = oNav.name == "opera";
bIsFX = oNav.name == "gecko";
bIsSF = oNav.name == "safari";
bIsKQ = oNav.name == "konqueror";
sDIR = fsGetDIR(sURL);
bLocal = !sURL.indexOf("file:");
_fvInitOnload();
fbAddLoad(_fvCkPg);
}
}
_STNS.fvInitLib();
_STNS.fvLoadLib();
if (!_STNS.bShield)
{
_STNS.fvCSSShield();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?