1.加载样式文件
function LoadStyle(url) {
try {document.createStyleSheet(url)
} catch(e) {
var cssLink = document.createElement('link');
cssLink.rel = 'stylesheet';
cssLink.type = 'text/css';
cssLink.href = url;
var head = document.getElementsByTagName('head')[0];
head.appendChild(cssLink)
}
}
2.返回脚本内容
function evalscript(s) {
if(s.indexOf('
var p = /]*?>([^\x00]*?)<\/script>/ig;
var arr = [];
while(arr = p.exec(s)) {
var p1 = /]*?src=\"([^\>]*?)\"[^\>]*?(reload=\"1\")?(?:charset=\"([\w\-]+?)\")?><\/script>/i;
var arr1 = [];
arr1 = p1.exec(arr[0]);
if(arr1) {
appendscript(arr1[1], '', arr1[2], arr1[3]);
} else {
p1 = /([^\x00]+?)<\/script>/i;
arr1 = p1.exec(arr[0]);
appendscript('', arr1[2], arr1[1].indexOf('reload=') != -1);
}
}
return s;
}
3.清除脚本内容
function stripscript(s) {
return s.replace(/.*?<\/script>/ig, '');
}
4.动态加载脚本文件
function appendscript(src, text, reload, charset) {
var id = hash(src + text);
if(!reload && in_array(id, evalscripts)) return;
if(reload && $(id)) {
$(id).parentNode.removeChild($(id));
}
evalscripts.push(id);
var scriptNode = document.createElement("script");
scriptNode.type = "text/javascript";
scriptNode.id = id;
scriptNode.charset = charset ? charset : (BROWSER.firefox ? document.characterSet : document.charset);
try {
if(src) {
scriptNode.src = src;
scriptNode.onloadDone = false;
scriptNode.onload = function() {
scriptNode.onloadDone = true;
JSLOADED[src] = 1;
};
scriptNode.onreadystatechange = function() {
if((scriptNode.readyState == 'loaded' || scriptNode.readyState == 'complete') && !scriptNode.onloadDone) {
scriptNode.onloadDone = true;
JSLOADED[src] = 1;
}
};
} else if(text) {
scriptNode.text = text;
}
document.getElementsByTagName('head')[0].appendChild(scriptNode);
} catch(e) {}
}
5.返回按ID检索的元素对象
function $(id) {
return !id ? null : document.getElementById(id);
}
6.跨浏览器绑定事件
function addEventSamp(obj, evt, fn) {
if(!oTarget) {
return;
}
if(obj.addEventListener) {
obj.addEventListener(evt, fn, false);
} else if(obj.attachEvent) {
obj.attachEvent('on' + evt, fn);
} else {
oTarget["on" + sEvtType] = fn;
}
}
7.跨浏览器删除事件
function delEvt(obj, evt, fn) {
if(!obj) {
return;
}
if(obj.addEventListener) {
obj.addEventListener(evt, fn, false);
} else if(oTarget.attachEvent) {
obj.attachEvent("on" + evt, fn);
} else {
obj["on" + evt] = fn;
}
}
耐得住寂寞,守得了繁华