fun.js

来自「KINGCMS5.0内容管理系统 ASP程序。」· JavaScript 代码 · 共 137 行

JS
137
字号
function UBB(id,content,cols,rows,type,path){
	
	document.write('<link href="'+path+'ubb/style.css" rel="stylesheet" type="text/css" />');
	document.write('<div id="kingubb">');
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.B();"><img src="'+path+'ubb/B.gif"/></a></span>');
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.I();"><img src="'+path+'ubb/I.gif"/></a></span>');
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.U();"><img src="'+path+'ubb/U.gif"/></a></span>');
	if(type){
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.Align(\'left\');"><img src="'+path+'ubb/left.gif"/></a></span>');
	}
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.Align(\'center\');"><img src="'+path+'ubb/center.gif"/></a></span>');
	if(type){
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.Align(\'right\');"><img src="'+path+'ubb/right.gif"/></a></span>');
	}
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.HyperLink();"><img src="'+path+'ubb/HyperLink.gif"/></a></span>');
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.Email();"><img src="'+path+'ubb/Email.gif"/></a></span>');
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.Color();"><img src="'+path+'ubb/Color.gif"/></a><em id="KingCMS_Color"></em></span>');
	document.write('<span><a href="javascript:;" onclick="javascript:ubb.Emo();"><img src="'+path+'ubb/Emo.gif"/></a><em id="KingCMS_Emo"></em></span>');
	if(type){
		document.write('<span><a href="javascript:;" onclick="javascript:ubb.Image();"><img src="'+path+'ubb/Image.gif"/></a></span>');
		document.write('<span><a href="javascript:;" onclick="javascript:ubb.Code();"><img src="'+path+'ubb/Code.gif"/></a></span>');
		document.write('<span><a href="javascript:;" onclick="javascript:ubb.Quote();"><img src="'+path+'ubb/Quote.gif"/></a></span>');
		document.write('<span><a href="javascript:;" onclick="javascript:ubb.Media();"><img src="'+path+'ubb/Media.gif"/></a></span>');
		document.write('<span><a href="javascript:;" onclick="javascript:ubb.Paste();"><img src="'+path+'ubb/Paste.gif"/></a></span>');
		document.write('<span><a href="javascript:;" onclick="javascript:ubb.chkPaste();"><img src="'+path+'/ubb/chkPaste.gif"/></a></span>');
	}
	document.write('</div>');
	document.write('<iframe style="width:0;height:0;border:0;" id="dtf"></iframe>');
	document.write('<textarea name="'+id+'" id="'+id+'" cols="'+cols+'" rows="'+rows+'" onclick="javascript:ubb.storeCaret(this);">'+content+'</textarea>');


	this.id=document.getElementById(id);

	display("KingCMS_Color");
	display("KingCMS_Emo");

	this.getSelectedText=function(){var selected='';
		if(this.id.isTextEdit){this.id.focus();var sel= document.selection;var rng= sel.createRange();rng.colapse;
		if((sel.type =="Text" || sel.type=="None") && rng !=null){if(rng.text.length > 0) selected=rng.text;}}return selected;}

	this.AddText=function(NewCode){document.all ? this.insertAtCaret(this.id, NewCode) : this.id.value += NewCode;this.setfocus();}
	this.insertAtCaret=function(textEl,text){if (textEl.createTextRange && textEl.caretPos){
	var caretPos=textEl.caretPos;caretPos.text += caretPos.text.charAt(caretPos.text.length-2) == ' ' ? text+' ' : text;}
	else if(textEl){textEl.value += text;}else {textEl.value=text;}}
	this.storeCaret=function(textEl){if(textEl.createTextRange){textEl.caretPos=document.selection.createRange().duplicate();}}
	this.setfocus=function() {this.id.focus();}

	this.Emo=function(){document.getElementById("KingCMS_Emo").style.visibility=="hidden"?gethtm(path+'emo.asp','KingCMS_Emo'):display('KingCMS_Emo')}
	this.EmoShow=function(emo){{AddTxt="[em="+emo+"]";this.AddText(AddTxt);};display("KingCMS_Emo");}


	this.Color=function(){document.getElementById("KingCMS_Color").style.visibility=="hidden"?gethtm(path+'ubb/color.htm','KingCMS_Color'):display('KingCMS_Color')}
	this.Chcolor=function(color){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[color=" + color + "]" + range.text + "[/color]";} else{AddTxt="[color="+color+"][/color]";this.AddText(AddTxt);};display("KingCMS_Color");}

	this.B=function(){if (this.getSelectedText()) {var range=document.selection.createRange();range.text="[b]"+range.text+"[/b]";}
	else {AddTxt="[b][/b]";this.AddText(AddTxt);}}
	this.I=function() {if (this.getSelectedText()) {var range=document.selection.createRange();range.text="[i]"+range.text+"[/i]";}
	else {AddTxt="[i][/i]";this.AddText(AddTxt);}}
	this.U=function(){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[u]"+range.text+"[/u]";}
	else{AddTxt="[u][/u]";this.AddText(AddTxt);}}
	this.Align=function(str){if(this.getSelectedText()){var range=document.selection.createRange();range.text="[align="+str+"]" + range.text + "[/align]";}
	else {AddTxt="[align="+str+"][/align]";this.AddText(AddTxt);}}
	this.Email=function(){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[email]" + range.text + "[/email]";}
	else{AddTxt="[email][/email]";this.AddText(AddTxt);}}
	this.HyperLink=function(){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[url]" + range.text + "[/url]";}
	else{AddTxt="[url][/url]";this.AddText(AddTxt);}}
	this.Image=function(){AddTxt="\r[img][/img]\r";this.AddText(AddTxt);}
	this.flash=function(){AddTxt="\r[swf][/swf]\r";this.AddText(AddTxt);}
	this.Code=function(){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[code]" + range.text + "[/code]";}
	else {AddTxt="\r[code][/code]";this.AddText(AddTxt);}}
	this.Quote=function(){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[quote]" + range.text + "[/quote]";}
	else {AddTxt="\r[quote][/quote]";this.AddText(AddTxt);}}
	this.Media=function(){AddTxt="\r[media][/media]\r";this.AddText(AddTxt);}

	this.Chsize=function(size){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[size=" + size + "]" + range.text + "[/size]";}
	else {AddTxt="[size="+size+"][/size]";this.AddText(AddTxt);}}
	this.Chfont=function(font){if (this.getSelectedText()){var range=document.selection.createRange();range.text="[font=" + font + "]" + range.text + "[/font]";}
	else {AddTxt="[font="+font+"][/font]";this.AddText(AddTxt);}}
	this.html_Paste=function(str){
	str=str.replace(/\r/g,"");str=str.replace(/on(load|click|dbclick|mouseover|mousedown|mouseup)="[^"]+"/ig,"");
	str=str.replace(/<script[^>]*?>([\w\W]*?)<\/script>/ig,"");str=str.replace(/<a[^>]+href="([^"]+)"[^>]*>(.*?)<\/a>/ig,"[url=$1]$2[/url]");
	str=str.replace(/<font[^>]+color=([^ >]+)[^>]*>(.*?)<\/font>/ig,"[color=$1]$2[/color]");
	str=str.replace(/<img[^>]+src="([^"]+)"[^>]*>/ig,"[img]$1[/img]");
	str=str.replace(/<([\/]?)b>/ig,"[$1b]");str=str.replace(/<([\/]?)strong>/ig,"[$1b]");
	str=str.replace(/<([\/]?)u>/ig,"[$1u]");str=str.replace(/<([\/]?)i>/ig,"[$1i]");
	str=str.replace(/ /g," ");str=str.replace(/&/g,"&");str=str.replace(/"/g,"\"");str=str.replace(/&lt;/g,"<");
	str=str.replace(/&gt;/g,">");str=str.replace(/<br>/ig,"\n");str=str.replace(/<[^>]*?>/g,"");
	str=str.replace(/\[url=([^\]]+)\](\[img\]\1\[\/img\])\[\/url\]/g,"$2");return str;}
	this.Paste=function(){var str=window.clipboardData.getData("Text");if(str!=null){
	str=this.html_Paste(str);if (this.getSelectedText()){var range=document.selection.createRange();range.text=str;}else{this.AddText(str);};}}
	this.HTML2UBB=function(strHTML){
		var re=this.htmlDecode(strHTML);
		re=re.replace(/height *>/ig,"");
		re=re.replace(/width *>/ig,"");
		re=re.replace(/<(\/?)strong>/ig,"[$1b]");
		re=re.replace(/<(\/?)strong>/ig,"[$1b]");
		re=re.replace(/<center>/ig,"[align=center]");
		re=re.replace(/<\/center>/ig,"[\/align]");
		re=re.replace(/<(\/?)b>/ig,"[$1b]");
		re=re.replace(/<(\/?)em>/ig,"[$1i]");
		re=re.replace(/<(\/?)i>/ig,"[$1i]");
		re=re.replace(/< *(\/?) *div[\w\W]*?>/ig,"\r\n");
		re=re.replace(/< *img +[\w\W]*?src=["]?([^">\r\n]+)[\w\W]*?>/ig,"[img]$1[/img]");
		re=re.replace(/< *a +[\w\W]*?href=["]?([^">\r\n]+)[\w\W]*?>([\w\W]*?)< *\/ *a *>/ig,"[url=$1]$2[/url]");
		re=re.replace(/<script[\w\W]+?<\/script>/ig,"");
		re=re.replace(/<[\w\W]*?>/ig,"");
		re=re.replace(/(\r\n){2,}/g,"\r\n");
		return(re);}


	this.chkPaste1=function(){this.id.focus();
		tR=document.selection.createRange();
		var dtf=document.getElementById("dtf");
		alert(dtf.value);
		dtf.document.body.innerHTML="";
		dtf.document.body.contentEditable=true;
		dtf.document.body.focus();
		dtf.document.execCommand("paste");
		tR.text=this.HTML2UBB(dtf.document.body.innerHTML);
		tR.select();}

	this.chkPaste=function(){
		dtf=document.getElementById("dtf");
		dtf.document.body.innerHTML="";
		dtf.document.body.contentEditable=true;
		dtf.document.body.focus();
		dtf.document.execCommand("paste");
		AddTxt=this.HTML2UBB(dtf.document.body.innerHTML);
		this.AddText(AddTxt);
	}



	this.htmlEncode=function(strS){return(strS.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/ /g,"&nbsp;").replace(/\r\n/g,"<br\/>"));}
	this.htmlDecode=function(strS){return(strS.replace(/<br\/?>/ig,"\r\n").replace(/&nbsp;/ig," ").replace(/&gt;/ig,">").replace(/&lt;/ig,"<").replace(/&amp;/ig,"&"));}

}

⌨️ 快捷键说明

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