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

📄 kindeditor.js

📁 一个java的成熟的论坛模式
💻 JS
📖 第 1 页 / 共 5 页
字号:
	str = KindConvertAttributeChild(str, 'href', '[^\"\\s>]+');
	str = KindConvertAttributeChild(str, 'color', '[^\"\\s>]+');
	str = KindConvertAttributeChild(str, 'alt', '[^\"\\s>]+');
	str = KindConvertAttributeChild(str, 'title', '[^\"\\s>]+');
	str = KindConvertAttributeChild(str, 'type', '[^\"\\s>]+');
	str = KindConvertAttributeChild(str, 'id', '\\w+');
	str = KindConvertAttributeChild(str, 'name', '\\w+');
	str = KindConvertAttributeChild(str, 'dir', '\\w+');
	str = KindConvertAttributeChild(str, 'target', '\\w+');
	str = KindConvertAttributeChild(str, 'align', '\\w+');
	str = KindConvertAttributeChild(str, 'width', '[\\w%]+');
	str = KindConvertAttributeChild(str, 'height', '[\\w%]+');
	str = KindConvertAttributeChild(str, 'border', '[\\w%]+');
	str = KindConvertAttributeChild(str, 'size', '[\\w%]+');
	str = KindConvertAttributeChild(str, 'cellspacing', '\\d+');
	str = KindConvertAttributeChild(str, 'cellpadding', '\\d+');
	return str;
}
function KindConvertAttributeChild(str, attName, regStr)
{
	var re = new RegExp("("+attName+"=)[\"']?("+regStr+")[\"']?","ig");
	str = str.replace(re, function ($0,$1,$2) {
						if (BROWSER == 'IE' && attName.match(/style/i) != null ) {
							return($1.toLowerCase() + "\"" + $2.toLowerCase() + "\"");
						} else {
							return($1.toLowerCase() + "\"" + $2 + "\"");
						}
					}
				);
	return str;
}
function KindTrim(str)
{
	str = str.replace(/^\s+|\s+$/g, "");
	str = str.replace(/[\r\n]+/g, "\r\n");
	return str;
}
function KindGetTop(id)
{
	var top = 28;
	var tmp = '';
	var obj = document.getElementById(id);
	while (eval("obj" + tmp).tagName != "BODY") {
		tmp += ".offsetParent";
		top += eval("obj" + tmp).offsetTop;
	}
	return top;
}
function KindGetLeft(id)
{
	var left = 2;
	var tmp = '';
	var obj = document.getElementById(id);
	while (eval("obj" + tmp).tagName != "BODY") {
		tmp += ".offsetParent";
		left += eval("obj" + tmp).offsetLeft;
	}
	return left;
}
function KindClearTemp()
{
	document.getElementById('popupData').innerHTML = '';
	document.getElementById('popupName').innerHTML = '';
}
function KindGetMenuCommonStyle(top, left)
{
	var str = 'position:absolute;top:'+top+'px;left:'+left+'px;font-size:12px;color:'+MENU_TEXT_COLOR+
			';background-color:'+MENU_BG_COLOR+';border:solid 1px '+MENU_BORDER_COLOR+';z-index:1';
	return str;
}
function KindDrawMenu(mode, content)
{
	var top = KindGetTop(mode);
	var left = KindGetLeft(mode);
	var str = '';
	str += '<div style="'+KindGetMenuCommonStyle(top, left)+'">';
	str += content;
	str += '</div>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = mode;
}
function KindDrawZoom()
{
	var str = '';
	for (i = 0; i < ZOOM_TABLE.length; i++) {
		str += '<div style="padding:2px;width:120px;cursor:pointer;" ' + 
		'onclick="javascript:KindExecute(\'KIND_ZOOM_END\', \'' + ZOOM_TABLE[i] + '\');" ' + 
		'onmouseover="javascript:this.style.backgroundColor=\''+MENU_SELECTED_COLOR+'\';" ' +
		'onmouseout="javascript:this.style.backgroundColor=\''+MENU_BG_COLOR+'\';">' + 
		ZOOM_TABLE[i] + '</div>';
	}
	KindDrawMenu('KIND_ZOOM', str);
}
function KindDrawTitle()
{
	var str = '';
	for (i = 0; i < TITLE_TABLE.length; i++) {
		str += '<div style="width:140px;cursor:pointer;" ' + 
		'onclick="javascript:KindExecute(\'KIND_TITLE_END\', \'' + TITLE_TABLE[i][0] + '\');" ' + 
		'onmouseover="javascript:this.style.backgroundColor=\''+MENU_SELECTED_COLOR+'\';" ' +
		'onmouseout="javascript:this.style.backgroundColor=\''+MENU_BG_COLOR+'\';"><' + TITLE_TABLE[i][0] + ' style="margin:2px;">' + 
		TITLE_TABLE[i][1] + '</' + TITLE_TABLE[i][0] + '></div>';
	}
	KindDrawMenu('KIND_TITLE', str);
}
function KindDrawFontname()
{
	var str = '';
	for (i = 0; i < FONT_NAME.length; i++) {
		str += '<div style="font-family:' + FONT_NAME[i][0] + 
		';padding:2px;width:160px;cursor:pointer;" ' + 
		'onclick="javascript:KindExecute(\'KIND_FONTNAME_END\', \'' + FONT_NAME[i][0] + '\');" ' + 
		'onmouseover="javascript:this.style.backgroundColor=\''+MENU_SELECTED_COLOR+'\';" ' +
		'onmouseout="javascript:this.style.backgroundColor=\''+MENU_BG_COLOR+'\';">' + 
		FONT_NAME[i][1] + '</div>';
	}
	KindDrawMenu('KIND_FONTNAME', str);
}
function KindDrawFontsize()
{
	var str = '';
	for (i = 0; i < FONT_SIZE.length; i++) {
		str += '<div style="font-size:' + FONT_SIZE[i][1] + 
		';padding:2px;width:120px;cursor:pointer;" ' + 
		'onclick="javascript:KindExecute(\'KIND_FONTSIZE_END\', \'' + FONT_SIZE[i][0] + '\');" ' + 
		'onmouseover="javascript:this.style.backgroundColor=\''+MENU_SELECTED_COLOR+'\';" ' +
		'onmouseout="javascript:this.style.backgroundColor=\''+MENU_BG_COLOR+'\';">' + 
		FONT_SIZE[i][1] + '</div>';
	}
	KindDrawMenu('KIND_FONTSIZE', str);
}
function KindCreateColorTable(cmdName, eventStr)
{
	var str = '';
	str += '<table cellpadding="0" cellspacing="2" border="0">';
	for (i = 0; i < COLOR_TABLE.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:1px;cursor:pointer;background-color:' +
		COLOR_TABLE[i] + ';" onmouseover="javascript:this.style.borderColor=\'#000000\';' + ((eventStr) ? eventStr : '') + '" ' +
		'onmouseout="javascript:this.style.borderColor=\'#AAAAAA\';" ' + 
		'onclick="javascript:KindExecute(\''+cmdName+'_END\', \'' + COLOR_TABLE[i] + '\');">&nbsp;</td>';
		if (i >= 9 && i%(i-1) == 0) {
			str += '</tr>';
		}
	}
	str += '</table>';
	return str;
}
function KindDrawColorTable(cmdName)
{
	var top = KindGetTop(cmdName);
	var left = KindGetLeft(cmdName);
	var str = '';
	str += '<div style="width:160px;padding:2px;'+KindGetMenuCommonStyle(top, left)+'">';
	str += KindCreateColorTable(cmdName);
	str += '</div>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = cmdName;
}
function KindDrawHr()
{
	var cmdName = 'KIND_HR';
	var top = KindGetTop(cmdName);
	var left = KindGetLeft(cmdName);
	var str = '';
	str += '<div style="width:160px;'+KindGetMenuCommonStyle(top, left)+'">';
	str += '<div id="hrPreview" style="margin:10px 2px 10px 2px;height:1px;border:0;font-size:0;background-color:#FFFFFF;"></div>';
	str += KindCreateColorTable(cmdName, 'document.getElementById(\'hrPreview\').style.backgroundColor = this.style.backgroundColor;');
	str += '</div>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = cmdName;
}
function KindDrawLayer()
{
	var cmdName = 'KIND_LAYER';
	var top = KindGetTop(cmdName);
	var left = KindGetLeft(cmdName);
	var str = '';
	str += '<div style="width:160px;'+KindGetMenuCommonStyle(top, left)+'">';
	str += '<div id="divPreview" style="margin:5px 2px 5px 2px;height:20px;border:1px solid #AAAAAA;font-size:1px;background-color:#FFFFFF;"></div>';
	str += KindCreateColorTable(cmdName, 'document.getElementById(\'divPreview\').style.backgroundColor = this.style.backgroundColor;');
	str += '</div>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = cmdName;
}
function KindDrawLink()
{
	var top = KindGetTop('KIND_LINK');
	var left = KindGetLeft('KIND_LINK') - 220;
	var str = '';
	str += '<table cellpadding="0" cellspacing="0" style="width:250px;'+KindGetMenuCommonStyle(top, left)+'">' + 
		'<tr><td style="width:50px;padding:5px;">URL</td>' +
		'<td style="width:200px;padding-top:5px;padding-bottom:5px;"><input type="text" id="hyperLink" value="http://" style="width:190px;border:1px solid #555555;background-color:#FFFFFF;"></td>' +
		'<tr><td style="padding:5px;">'+STR_LINK_TARGET+'</td>' +
		'<td style="padding-bottom:5px;"><select id="hyperLinkTarget"><option value="_blank" selected="selected">'+STR_LINK_BLANK+'</option><option value="">'+STR_LINK_NOBLANK+'</option></select></td>' + 
		'<tr><td colspan="2" style="padding-bottom:5px;" align="center"><input type="button" name="button" value="'+STR_BUTTON_CONFIRM+'" ' +
		'onclick="javascript:KindDrawLinkEnd();"' +
		'style="border:1px solid #555555;background-color:'+BUTTON_COLOR+';"> <input type="button" name="button" value="'+STR_BUTTON_CANCEL+'" onclick="javascript:KindClearTemp();" style="border:1px solid #555555;background-color:'+BUTTON_COLOR+';"></td></tr>';
	str += '</table>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = 'KIND_LINK';
}
function KindDrawLinkEnd()
{
	var range;
	var url = document.getElementById('hyperLink').value;
	var target = document.getElementById('hyperLinkTarget').value;
	if (url.match(/http:\/\/.{3,}/) == null) {
		alert(MSG_INPUT_URL);
		return false;
	}
	KindSelect();
	var element;
    if (BROWSER == 'IE') {
		if (SELECTION.type.toLowerCase() == 'control') {
			var el = document.createElement("a");
			el.href = url;
			if (target) {
				el.target = target;
			}
			RANGE.item(0).applyElement(el);
		} else if (SELECTION.type.toLowerCase() == 'text') {
			KindExecuteValue('CreateLink', url);
			element = RANGE.parentElement();
			if (target) {
				element.target = target;
			}
		}
	} else {
		KindExecuteValue('CreateLink', url);
		element = RANGE.startContainer.previousSibling;
		element.target = target;
		if (target) {
			element.target = target;
		}
    }
	KindClearTemp();
}
function KindDrawIcon()
{
	var top = KindGetTop('KIND_ICON');
	var left = KindGetLeft('KIND_ICON');
	var str = '';
	var iconNum = 36;
	str += '<table cellpadding="0" cellspacing="2" style="'+KindGetMenuCommonStyle(top, left)+'">';
	for (i = 0; i < iconNum; i++) {
		if (i == 0 || (i >= 6 && i%6 == 0)) {
			str += '<tr>';
		}
		var num;
		if ((i+1).toString(10).length < 2) {
			num = '0' + (i+1);
		} else {
			num = (i+1).toString(10);
		}
		var iconUrl = ICON_PATH + 'etc_' + num + '.gif';
		str += '<td style="padding:2px;border:0;cursor:pointer;" ' + 
		'onclick="javascript:KindExecute(\'KIND_ICON_END\', \'' + iconUrl + '\');">' +
		'<img src="' + iconUrl + '" style="border:1px solid #EEEEEE;" onmouseover="javascript:this.style.borderColor=\'#AAAAAA\';" ' +
		'onmouseout="javascript:this.style.borderColor=\'#EEEEEE\';">' + '</td>';
		if (i >= 5 && i%(i-1) == 0) {
			str += '</tr>';
		}
	}
	str += '</table>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = 'KIND_ICON';
}
function KindDrawSpecialchar()
{
	var top = KindGetTop('KIND_SPECIALCHAR');
	var left = KindGetLeft('KIND_SPECIALCHAR');
	var str = '';
	str += '<table cellpadding="0" cellspacing="2" style="'+KindGetMenuCommonStyle(top, left)+'">';
	for (i = 0; i < SPECIAL_CHARACTER.length; i++) {
		if (i == 0 || (i >= 10 && i%10 == 0)) {
			str += '<tr>';
		}
		str += '<td style="padding:2px;border:1px solid #AAAAAA;cursor:pointer;" ' + 
		'onclick="javascript:KindExecute(\'KIND_SPECIALCHAR_END\', \'' + SPECIAL_CHARACTER[i] + '\');" ' +
		'onmouseover="javascript:this.style.borderColor=\'#000000\';" ' +
		'onmouseout="javascript:this.style.borderColor=\'#AAAAAA\';">' + SPECIAL_CHARACTER[i] + '</td>';
		if (i >= 9 && i%(i-1) == 0) {
			str += '</tr>';
		}
	}
	str += '</table>';
	document.getElementById('popupData').innerHTML = str;
	document.getElementById('popupName').innerHTML = 'KIND_SPECIALCHAR';
}
function KindDrawTableSelected(i, j)
{
	var text = i.toString(10) + ' by ' + j.toString(10) + ' Table';
	document.getElementById('tableLocation').innerHTML = text;
	var num = 10;
	for (m = 1; m <= num; m++) {
		for (n = 1; n <= num; n++) {
			var obj = document.getElementById('tableTd' + m.toString(10) + '_' + n.toString(10) + '');
			if (m <= i && n <= j) {
				obj.style.backgroundColor = MENU_SELECTED_COLOR;
			} else {
				obj.style.backgroundColor = '#FFFFFF';
			}
		}
	}
}
function KindDrawTable()
{
	var top = KindGetTop('KIND_TABLE');
	var left = KindGetLeft('KIND_TABLE');
	var str = '';
	var num = 10;
	str += '<table cellpadding="0" cellspacing="0" style="'+KindGetMenuCommonStyle(top, left)+'">';
	for (i = 1; i <= num; i++) {
		str += '<tr>';
		for (j = 1; j <= num; j++) {
			var value = i.toString(10) + ',' + j.toString(10);
			str += '<td id="tableTd' + i.toString(10) + '_' + j.toString(10) + 
			'" style="width:15px;height:15px;background-color:#FFFFFF;border:1px solid #DDDDDD;cursor:pointer;" ' + 
			'onclick="javascript:KindExecute(\'KIND_TABLE_END\', \'' + value + '\');" ' +
			'onmouseover="javascript:KindDrawTableSelected(\''+i.toString(10)+'\', \''+j.toString(10)+'\');" ' + 
			'onmouseout="javascript:;">&nbsp;</td>';
		}

⌨️ 快捷键说明

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