⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utiltext.js

📁 SQLiteDBMS是SQLite数据库的管理服务器软件
💻 JS
字号:
function trim(strSource) {
	re = /^\s+|\s+$/g;
	return strSource.replace(re, '');
}

function ltrim(strSource) {
	re = /^\s+/g;
	return strSource.replace(re, '');
}

function rtrim(strSource) {
	re = /\s+$/g;
	return strSource.replace(re, '');
}

String.prototype.trim=function() {
	re = /^\s+|\s+$/g;
	return this.replace(re, '');
}

String.prototype.ltrim=function() {
	re = /^\s+/g;
	return this.replace(re, '');
}

String.prototype.rtrim=function() {
	re = /\s+$/g;
	return this.replace(re, '');
}

String.prototype.repeat=function(times) {
	if (!this || !times || isNaN(parseInt(times))) return '';
	times=parseInt(times);
	var ret='';
	for (var i=times; i--; ) {
		ret+=this;
	}
	return ret;
}

String.prototype.write=function() {
	document.write(this);
}

String.prototype.bytes=function() {
	return (this.length + (escape(this) + "/%u").match(/%u/g).length-1);
}

String.prototype.wcut=function(len, append) {
	var bytes=this.bytes();
	if (!len || len <= 0 || len >= bytes) return this;
	var ret=this;
	while (len < ret.bytes())
		ret=ret.substr(0, ret.length-1);
	return ret+(append?append:'');
}

String.prototype.lpad=function(len, append) {
	var ret=this;
	while (ret.length < len)
		ret=append+ret;
	return ret;
}

String.prototype.rpad=function(len, append) {
	var ret=this;
	while (ret.length < len)
		ret+=append;
	return ret;
}

function strip(text) {
	if (text.substr(0,1) == '"' && text.substr(text.length-1,1) == '"') 
		return text.substr(1, text.length-2);
	else return text;
}

function pgArrayStrip(pgArray) {
	if (pgArray.substr(0,1) == '{' && pgArray.substr(pgArray.length-1, 1) == '}')
		return pgArray.substr(1, pgArray.length-2);
	return pgArray;
}

function pgArrayExplode(pgArray, isText) {
	pgArray=pgArrayStrip(pgArray);
	var ret=pgArray.split(',');
	if (isText) {
		for (var i=ret.length; i--;) {
			ret[i]=ret[i].replace(/(__COMMA__)/g, ',');
			var len=ret[i].length;
			if (len > 1 && ret[i].substr(0, 1) == '"' && ret[i].substr(len-1, 1) == '"')
				ret[i]=ret[i].substr(1, len-2);
		}
	}
	return ret;
}

function numberSeqByKey(e) {
	if (!e || !e.keyCode || (e.keyCode != 38 && e.keyCode != 40)) return;
	var eventSrc=(_isIE)?e.srcElement:e.target;
	if (!eventSrc) return;
	if (eventSrc.value.trim().length <= 0) eventSrc.value=0;
	if (!isNumber(eventSrc.value)) return;
	if (e.keyCode == 38) eventSrc.value=number(eventSrc.value)+1;
	else eventSrc.value=number(eventSrc.value)-1;
	if (eventSrc.onchange) eventSrc.onchange();
}

function isNumber(str) {
	var num=parseInt(str);
	if (isNaN(num)) return false;
	return true;
}

function number(str) {
	var num=parseInt(str);
	if (isNaN(num)) return 0;
	return num;
}

function findToken(str, token, def) {
	var find, reg;
	for (var i=0; i < token.length; i++) {
		try{reg=new RegExp(token[i],"ig");}catch(e){return;}
		if (find=str.match(reg))
			return find;
	}
	if (typeof def != 'undefined') return def;
	else return '';
}

function getValue(str, def) {
	if (str) return str;
	else if (typeof def != 'undefined') return def;
	else return '';
}

function fieldNum(field) {
	if (!field) return;
	if (!field.tagName)
		field=(_isIE)?field.srcElement:field.target;
	if (!field) return;
	var val=field.value;
	var reg=new RegExp(/[^-0-9]*/g);
	val=val.replace(reg,'');
	if (field.value != val)
		field.value=val;
	if (isNumber(field.min) && number(field.value) < number(field.min))
		field.value=number(field.min);
	if (isNumber(field.max) && number(field.value) > number(field.max))
		field.value=number(field.max);
}

function fieldDisable(field) {
	field.disabled=true;
	field.style.backgroundColor='#EEE';
	field.style.filter='alpha(opacity=50)';
	field.style.MozOpacity='0.50';
}

function fieldEnable(field) {
	field.disabled=false;
	field.style.removeAttribute('backgroundColor');
	field.style.removeAttribute('filter');
	field.style.removeAttribute('MozOpacity');
}

function pressEnter(e) {
	if (e && e.keyCode && e.keyCode == 13) {
		var eventSrc=(_isIE)?e.srcElement:e.target;
		if (eventSrc && eventSrc.onchange) eventSrc.onchange();
	}
}

function enterNextField(e, callback) {
	if (e && e.keyCode && e.keyCode == 13) {
		var eventSrc=(_isIE)?e.srcElement:e.target;
		if (!eventSrc) return;
		var fields=oFindChildByTagNames(eventSrc.form?eventSrc.form:document.body, 'INPUT', 'SELECT');
		var field=null;
		if (fields) {
			for (var i=0; i < fields.length; i++) {
				if (fields[i] == eventSrc) {
					if (i == fields.length-1) {
						if (callback) {
							if (typeof callback == 'function' || typeof callback == 'object')
								callback();
							else
								eval(callback);
						}else
							field=fields[0];
					}else
						field=fields[i+1];
					break;
				}
			}
		}
		if (field) {
			field.focus();
			field.select();
		}
	}
}

function calSize(size, noBold, postfix) {
	size=parseInt(size);
	var b1, b2;
	if (!noBold) {
		b1='<b>';
		b2='</b>';
	}else b1=b2='';
	if (!postfix) postfix='';
	if (size < 1024)
		return b1+numberFormat(Math.round(size))+b2+postfix+'B';

	var unit=Array('B&nbsp;','KB','MB','GB','TB');
	for (var i=0; i < unit.length; i++) {
		var tmp=Math.round(size/1024);
		if (tmp < 1)
			return b1+numberFormat(size,1)+b2+postfix+unit[i];
		else
			size=tmp;
	}
	return b1+numberFormat(size,1)+b2+postfix+unit[--i];
}

function stripDomain(uri) {
	return uri.replace(/(http|ftp):\/\/[.0-9a-z-_]*/i, '');
}

function basename(path) {
	var pathArr=path.split('/');
	pathArr.pop();
	return '/'+pathArr.join('/');
}

function filename(path) {
	return path.split('/').pop();
}

function numberFormat(num) {
	num=num.toString();
	var ret='';
	for (var i=0; i < num.length; i++) {
		if (i && (num.length-i)%3 == 0)
			ret+=',';
		ret+=num.charAt(i);
	}
	return ret;
}

function timestampConvert(timestamp, format) {
	var date=new Date((timestamp*1000));
	var convert='';
	for (var i=0; i < format.length; i++) {
		switch(format.charAt(i)) {
			case 'y': convert+=date.getFullYear().toString(); break;
			case 'm': convert+=((date.getMonth()+1).toString().length == 2)?(date.getMonth()+1).toString():'0'+(date.getMonth()+1).toString(); break;
			case 'd': convert+=(date.getDate().toString().length == 2)?date.getDate().toString():'0'+date.getDate().toString(); break;
			case 'h': convert+=(date.getHours().toString().length == 2)?date.getHours().toString():'0'+date.getHours().toString(); break;
			case 'i': convert+=(date.getMinutes().toString().length == 2)?date.getMinutes().toString():'0'+date.getMinutes().toString(); break;
			case 's': convert+=(date.getSeconds().toString().length == 2)?date.getSeconds().toString():'0'+date.getSeconds().toString(); break;
			default: convert+=format.charAt(i); break;
		}
	}
	return convert;
}

function printPaging(total, cur_page, limit, overEvent, clickEvent, larrow, rarrow, page_size) {
	if (!cur_page) cur_page=1;
	if (!page_size) page_size=10;
	var page_max, i;
	var total_media=0;
	var ret;

	total_media=total;

	page_max=Math.ceil(total_media/limit);

	ret='<div id="div_paging" style="text-align:center">';

	var page_start=cur_page-(cur_page%page_size)+1;
	if (cur_page%page_size == 0) page_start-=page_size;

	var page_end=page_start+page_size-1;
	var page_remain=true;
	if (page_end > page_max) {
		page_end=page_max;
		page_remain=false;
	}

	var page;
	if (page_start > 1) {
		page=page_start-page_size;
		if (larrow) ret+='<img src="'+larrow+'" border=0 align=absmiddle onclick="'+clickEvent.replace('REPLACE_I', page)+'" style="cursor:pointer" title="'+page+'페이지로 이동">';
		else ret+='<a href="javascript:'+clickEvent.replace('REPLACE_I', page)+'" title="'+page+'페이지로 이동">◀</a>';
	}
	for (i=page_start; i <= page_end; i++) {
		if (i == cur_page)
			ret+='<span class="blog_media_browser_nav_cur_page" title="현재 '+i+'번째 페이지">'+i+'</span>';
		else
			ret+='<span onmouseover="'+overEvent+'" onclick="'+clickEvent.replace('REPLACE_I',i)+'" class="blog_media_browser_nav_page" title="'+i+'페이지로 이동">'+i+'</span>';
	}
	if (page_remain) {
		page=page_end+1;
		if (rarrow) ret+='<img src="'+rarrow+'" border=0 align=absmiddle onclick="'+clickEvent.replace('REPLACE_I',(page_end+1))+'" style="cursor:pointer" title="'+page+'페이지로 이동">';
		else ret+='<a href="javascript:'+clickEvent.replace('REPLACE_I',(page_end+1))+'" title="'+page+'페이지로 이동">▶</a>';
	}

	ret+='</div>';
	return ret;
}

function diff(diff1, diff2) {
	if (!_XMLHttp['diff']) _XMLHttp['diff']=new XMLHttp('diff', diffResponse);
	_XMLHttp['diff'].registCallback();
	_XMLHttp['diff'].open();
	_XMLHttp['diff'].setHeader('Content-Type', 'application/x-www-form-urlencoded');
	_XMLHttp['diff'].send('diff1='+XMLQueryEscape(diff1)+'&diff2='+XMLQueryEscape(diff2));
}

function diffResponse() {
	if (!_XMLHttp['diff'] || !_XMLHttp['diff'].success()) return;
	var data=_XMLHttp['diff'].getResponse('DIFF');
	if (data)
		aDump(data[0]);
}

function textDump(text) {
	var div=document.createElement('TEXTAREA');
	document.body.appendChild(div);
	div.noWrap=true;
	div.style.cssText='position:absolute;overflow:scroll;width:400px;height:400px;top:0px;left:0px;background-color:white;z-index:10000;';
	div.value=text;
	div.ondblclick=new Function('this.parentNode.removeChild(this);');
}

function isImagePath(path) {
	return path.match(/\.jpg$|\.gif$|\.bmp$|\.png$/i);
}

function urlDecode(url) {
	if (!url) return '';
	if (!_XMLHttp['urlDecode']) _XMLHttp['urlDecode']=new XMLHttp('urldecode');
	_XMLHttp['urlDecode'].setQuery('q[url]='+url);
	_XMLHttp['urlDecode'].setAsync(false);
	_XMLHttp['urlDecode'].execute();
	var data=_XMLHttp['urlDecode'].getResponse('DATA');
	if (data) {
		return data[0].decode;
	}else alert(_XMLHttp['urlDecode'].getError('msg'));
}

function urlEncode(url) {
	if (!url) return '';
	if (!_XMLHttp['urlDecode']) _XMLHttp['urlDecode']=new XMLHttp('urlencode');
	_XMLHttp['urlDecode'].setQuery('q[url]='+url);
	_XMLHttp['urlDecode'].setAsync(false);
	_XMLHttp['urlDecode'].execute();
	var data=_XMLHttp['urlDecode'].getResponse('DATA');
	if (data) {
		return data[0].encode;
	}else alert(_XMLHttp['urlDecode'].getError('msg'));
}

function hexConvert(convert) {
	var firstnum;
	var lastnum;
	b = Math.floor (convert / 16);
	c = convert; c %= 16
	charx = '0123456789ABCDEF';
	firstnum = charx.substring(b,b+1);
	lastnum = charx.substring(c,c+1);
	hexa = firstnum + lastnum;

	return hexa;
}

function dec2hex(dec) {
	var ret='';
	while (dec > 256) {
		ret+=hexConvert(dec%256);
		dec/=256;
	}
	ret+=hexConvert(dec);
	return ret;
}

function innerText(div, text) {
	if (typeof text == 'undefined') {
		if (_isIE) return div.innerText;
		else return div.textContent;
	}else{
		if (_isIE) div.innerText=text;
		else div.textContent=text;
	}
}

function newText(text, doc) {
	if (!doc) doc=document;
	return doc.createTextNode(text);
}

function dateParse(string) {
	if (!string) return -1;
	var date=new Date;

	function _dateParseMonth(month) {
		var array={jan: 0,feb: 1,mar: 2,apr: 3,may: 4,jun: 5,jul: 6,aug: 7,sep: 8,oct: 9,nov: 10,dec: 11};
		return array[month.substr(0, 3).toLowerCase()];
	}

	/*Sun Nov 6 08:49:30 1994         ; ANSI C's asctime() format*/
	var match=string.match(/(\w{3}) (\w{3}) (\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2}) (\d{4})/);
	if (match) {
		date.setFullYear(match[7]);
		date.setMonth(_dateParseMonth(match[2]));
		date.setDate(match[3]);
		date.setHours(match[4]);
		date.setMinutes(match[5]);
		date.setSeconds(match[6]);
	}else{
		/*Sun, 06 Nov 1994 08:49:30 GMT   ; RFC 822, updated by RFC 1123*/
		match=string.match(/(\w{3}), (\d{1,2}) (\w{3}) (\d{4}) (\d{1,2}):(\d{1,2}):(\d{1,2}) (GMT)?/);
		if (match) {
			date.setFullYear(match[4]);
			date.setMonth(_dateParseMonth(match[3]));
			date.setDate(match[2]);
			date.setHours(match[5]);
			date.setMinutes(match[6]);
			date.setSeconds(match[7]);
		}else{
			/*Sunday, 06-Nov-94 08:49:30 GMT  ; RFC 850, obsoleted by RFC 1036*/
			match=string.match(/(\w{6}), (\d{1,2})-(\w{3})-(\d{2}) (\d{1,2}):(\d{1,2}):(\d{1,2}) (GMT)?/);
			if (match) {
				date.setYear(match[4]);
				date.setMonth(_dateParseMonth(match[3]));
				date.setDate(match[2]);
				date.setHours(match[5]);
				date.setMinutes(match[6]);
				date.setSeconds(match[7]);
			}else return null;
		}
	}
	return date;
}

/*
function stripTags(html) {
	return html.replace(/[<][/]?\w+[^>]*[>]/g, '');
}
*/

var _redirectUrl=null;
function redirect(url) {
	if (!url && _redirectUrl) document.location=_redirectUrl;
	else{
		_redirectUrl=url;
		setTimeout('redirect()', 10);
	}
}

function copy_clip(meintext) {
	try{
		if (window.clipboardData) {
			window.clipboardData.setData("Text", meintext);
		}else if (window.netscape) { 
			netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
			var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
			if (!clip) return;

			var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
			if (!trans) return;

			trans.addDataFlavor('text/unicode');

			var str = new Object();
			var len = new Object();

			var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);

			var copytext=meintext;

			str.data=copytext;

			trans.setTransferData("text/unicode",str,copytext.length*2);

			var clipid=Components.interfaces.nsIClipboard;

			if (!clip) return false;

			clip.setData(trans,null,clipid.kGlobalClipboard);
		}
		return false;
	}catch(e) {
		alert('Copy to clipboard failed.');
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -