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

📄 ubbeditor.js

📁 6KB超经典BBS源代码..................ASP脚本
💻 JS
📖 第 1 页 / 共 2 页
字号:
var Quote = 0;
var Bold  = 0;
var Italic = 0;
var Underline = 0;
var Code = 0;
var editObj;
var fontbegin;
var fontend;
var ToolBar = Array(
						Array('Ubb_fly', 'fly.gif','飞行字'),
						Array('Ubb_move', 'move.gif', '移动字'),
						Array('Ubb_glow', 'glow.gif', '发光字'),
						Array('Ubb_shadow', 'shadow.gif', '阴影字'),
						Array('Ubb_bold', 'bold.gif', '粗体字'),
						Array('Ubb_italicize', 'italicize.gif', '斜体字'),
						Array('Ubb_underline', 'underline.gif', '下划线'),
						Array('Ubb_sup', 'sup.gif', '上标'),
						Array('Ubb_sub', 'sub.gif', '下标'),
						Array('Ubb_code', 'code.gif', '插入代码'),
						Array('Ubb_fontsize', 'fontsize.gif', '字体大小'),
						Array('Ubb_fontcolor', 'fontcolor.gif', '字体颜色'),
						Array('Ubb_center', 'center.gif', '居中'),
						Array('Ubb_image', 'image.gif', '图片'),
						Array('Ubb_Shockwave', 'Shockwave.gif', 'Shockwave文件'),
						Array('Ubb_rm', 'rm.gif', 'realplayer文件'),
						Array('Ubb_mp', 'mp.gif',  'media player文件'),
						Array('Ubb_url', 'url.gif', '超链接'),
						Array('Ubb_email', 'email.gif', 'Email链接'),
						Array('Ubb_csound', 'csound.gif', '背景音乐'),
						Array('Ubb_ra', 'ra.gif', 'real音频文件'),
						Array('Ubb_6kbbs', '6kbbs.gif', '特殊帖子'),
						Array('Ubb_face', 'face.gif', '表情')
				  );

var FontColor = Array(
						"#FF0000", "#FFFF00", "#00FF00", "#00FFFF", "#0000FF", "#FF00FF", "#FFFFFF", "#F5F5F5", "#DCDCDC", "#FFFAFA",
						"#D3D3D3", "#C0C0C0", "#A9A9A9", "#808080", "#696969", "#000000", "#2F4F4F", "#708090", "#778899", "#4682B4",
						"#4169E1", "#6495ED", "#B0C4DE", "#7B68EE", "#6A5ACD", "#483D8B", "#191970", "#000080", "#00008B", "#0000CD",
						"#1E90FF", "#00BFFF", "#87CEFA", "#87CEEB", "#ADD8E6", "#B0E0E6", "#F0FFFF", "#E0FFFF", "#AFEEEE", "#00CED1",
						"#5F9EA0", "#48D1CC", "#00FFFF", "#40E0D0", "#20B2AA", "#008B8B", "#008080", "#7FFFD4", "#66CDAA", "#8FBC8F",
						"#3CB371", "#2E8B57", "#006400", "#008000", "#228B22", "#32CD32", "#00FF00", "#7FFF00", "#7CFC00", "#ADFF2F",
						"#98FB98", "#90EE90", "#00FF7F", "#00FA9A", "#556B2F", "#6B8E23", "#808000", "#BDB76B", "#B8860B", "#DAA520",
						"#FFD700", "#F0E68C", "#EEE8AA", "#FFEBCD", "#FFE4B5", "#F5DEB3", "#FFDEAD", "#DEB887", "#D2B48C", "#BC8F8F",
						"#A0522D", "#8B4513", "#D2691E", "#CD853F", "#F4A460", "#8B0000", "#800000", "#A52A2A", "#B22222", "#CD5C5C",
						"#F08080", "#FA8072", "#E9967A", "#FFA07A", "#FF7F50", "#FF6347", "#FF8C00", "#FFA500", "#FF4500", "#DC143C",
						"#FF0000", "#FF1493", "#FF00FF", "#FF69B4", "#FFB6C1", "#FFC0CB", "#DB7093", "#C71585", "#800080", "#8B008B",
						"#9370DB", "#8A2BE2", "#4B0082", "#9400D3", "#9932CC", "#BA55D3", "#DA70D6", "#EE82EE", "#DDA0DD", "#D8BFD8",
						"#E6E6FA", "#F8F8FF", "#F0F8FF", "#F5FFFA", "#F0FFF0", "#FAFAD2", "#FFFACD", "#FFF8DC", "#FFFFE0", "#FFFFF0",
						"#FFFAF0", "#FAF0E6", "#FDF5E6", "#FAEBD7", "#FFE4C4", "#FFDAB9", "#FFEFD5", "#FFF5EE", "#FFF0F5", "#FFE4E1"
					);

function ClearHtml()
{
	document.getElementById('MenuName').innerHTML ='';
	document.getElementById('MenuData').innerHTML ='';
}
function GetObjTop(id)
{
	var obj = document.getElementById(id);
	var top = obj.offsetTop;
	while (obj=obj.offsetParent) {
		top += obj.offsetTop;
	}
	return top;
}


function GetObjLeft(id)
{
	var obj = document.getElementById(id);
	var left = obj.offsetLeft;
	while (obj=obj.offsetParent) {
		left += obj.offsetLeft;
	}
	return left;
}

function GetMenuStyle(top, left)
{
	var str = 'padding:5px;width:150px;position:absolute;top:'+top+'px;left:'+left+'px;background-color:#FFFFFF;border:solid 1px #cccccc;z-index:1;';
	return str;
}


function DrawMenu(Obj,content)
{
	var oldHtml=document.getElementById('MenuName').innerHTML;
	if (oldHtml==Obj)
	{
		ClearHtml();
	}
	else
	{
		var top = GetObjTop(Obj) + 32;
		var left = GetObjLeft(Obj) + 1;
		var str = '';
		str += '<div style="'+GetMenuStyle(top, left)+'">';
		str += content;
		str += '</div>';
		document.getElementById('MenuName').innerHTML = Obj;
		document.getElementById('MenuData').innerHTML = str;
	}
}

function ShowFontSize()
{
	var str='';
	for(var i=1;i<6;i++)
		str+='<a onclick="javascript:ubbsize('+i+')"><font size='+i+'>'+i+'</font></a><br>';
	
	str="<p style='line-height:150%;margin:5px;cursor:pointer;;'>"+str+"</p>";
	DrawMenu("Ubb_fontsize",str);
}
function ShowFontColor()
{
	var str='';
	var str = '';
	str += '<table cellpadding="0" cellspacing="2" border="0">';
	for (i = 0; i < FontColor.length; i++) {
		if (i == 0 || (i >= 10 && i%10 == 0)) {
			str += '<tr>';
		}
		str += '<td style="width:12px;height:12px;border:1px solid #AAAAAA;font-size:10px;cursor:pointer;background-color:' +
		FontColor[i] + ';" onmouseover="javascript:this.style.borderColor=\'#000000\';" '+
		'onmouseout="javascript:this.style.borderColor=\'#AAAAAA\';" ' +
		'onclick="javascript:COLOR(\''+FontColor[i]+'\');">&nbsp;</td>';
		if (i >= 9 && i%(i-1) == 0) {
			str += '</tr>';
		}
	}
	str += '</table>';
	DrawMenu("Ubb_fontcolor",str);
}
function Show6kbbs()
{
	var str='';
		str+="<p style='line-height:150%;margin:5px;cursor:pointer;;'><a onclick='javascript:grade()'>等级可见</a><br><a onclick='javascript:reply()'>回复可见</a><br><a onclick='javascript:name()'>指定读者</a><br><a onclick='javascript:smark()'>积分可见</a><br><a onclick='javascript:showdate()'>日期可见</a><br><a onclick='javascript:mustlogin()'>登陆可见</a></p>";
	DrawMenu("Ubb_6kbbs",str);
}
function ShowFace()
{
	var str='';
		for(var i=1;i<=15;i=i+1)
			str+='<A href=javascript:AddUbbCode(\'\',\'[em'+i+']\')><img border=0 src=images/emote/em'+i+'.gif></A>&nbsp;';
	DrawMenu("Ubb_face",str);
}
function UbbEditor(ObjName,Cols,Rows,DefaultValue,ImagePath)
{
	var iconStr;
	editObj=ObjName;
	this.cols=Cols;
	this.imagepath=
	this.rows=Rows;
	this.defaultValue=DefaultValue;
	this.imagePath=ImagePath;
	this.showeditor=function ()
	{
		iconStr="";
			for (var i = 0; i < ToolBar.length; i++) {
			iconStr += '<img id="'+ ToolBar[i][0] +'" src="' + this.imagePath + ToolBar[i][1] + '" alt="' + ToolBar[i][2] + '" align="absmiddle" onclick=RunMethod("'+ToolBar[i][0]+'") style="cursor:pointer;"> ';
			}

			iconStr='<div id="ubbeditordiv" style="display:none;">'+iconStr+'</div>';
		document.write(iconStr);
		//var editorstr="<textarea rows="+this.rows+" name="+editObj+"  id="+editObj+" cols="+this.cols+">"+this.defaultValue+"</textarea>";
		document.write('<span id="MenuName" style="display:none;"></span><span id="MenuData"></span>');
	}

}
function RunMethod(str)
{
	switch(str)
	{
		case'Ubb_fly':
			fly();
		break;

		case'Ubb_move':
			move();
		break;

		case'Ubb_glow':
			light();
		break;

		case'Ubb_shadow':
			ying();
		break;

		case'Ubb_bold':
			Cbold();
		break;

		case'Ubb_italicize':
			Citalic();
		break;

		case'Ubb_underline':
			Cunder();
		break;
		
		case'Ubb_sup':
			AddUbbCode('[sup]','[/sup]');
		break;

		case'Ubb_sub':
			AddUbbCode('[sub]','[/sub]');
		break;

		case'Ubb_code':
			AddUbbCode('[code]','[/code]');
		break;

		case'Ubb_fontsize':
			ShowFontSize();
		break;

		case'Ubb_fontcolor':
			ShowFontColor();
		break;

		case'Ubb_6kbbs':
			Show6kbbs();
		break;

		case'Ubb_face':
			ShowFace();
		break;

		case'Ubb_center':
			center();
		break;

		case'Ubb_image':
			image();
		break;

		case'Ubb_Shockwave':
			Cdir();
		break;

		case'Ubb_rm':
			Crm();
		break;

		case'Ubb_mp':
			Cwmv();
		break;

		case'Ubb_url':
			Curl();
		break;

		case'Ubb_email':
			Cemail();
		break;

		case'Ubb_csound':
			Csound();
		break;

		case'Ubb_ra':
			Cra();
		break;

		default: 
		break;

	}
}
function WordAdd(){
	if ((document.selection)&&(document.selection.type == "Text")) {
		var range = document.selection.createRange();
		var ch_text=range.text;
		range.text = fontbegin + ch_text + fontend;
	} 
	else {
		document.getElementById(editObj).value=fontbegin+document.getElementById(editObj).value+fontend;
		document.getElementById(editObj).focus();
	}
}
function AddText(text) {
	if (document.getElementById(editObj).createTextRange && document.getElementById(editObj).caretPos) {      
		var caretPos = document.getElementById(editObj).caretPos;      
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?
		text + ' ' : text;
	}
	else document.getElementById(editObj).value += text;
	document.getElementById(editObj).focus(caretPos);
}

helpstat = false;
stprompt = true;

⌨️ 快捷键说明

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