📄 post.js
字号:
str += '<iframe name="BBSXPLinkIframe" id="BBSXPLinkIframe" frameborder="0" style="width:250px;height:85px;padding:0;margin:0;border:0;">';
str += '</iframe></div>';
return str;
break;
default:
break;
}
}
function BBSXPDrawIframe(cmd)
{
if (YuZi_BROWSER == 'IE') {
YuZi_Replace_DOCUMENT = document.frames("BBSXPReplaceIframe").document;
YuZi_IMAGE_DOCUMENT = document.frames("BBSXPImageIframe").document;
YuZi_Media_DOCUMENT = document.frames("BBSXPMediaIframe").document;
YuZi_LINK_DOCUMENT = document.frames("BBSXPLinkIframe").document;
} else {
YuZi_Replace_DOCUMENT = document.getElementById('BBSXPReplaceIframe').contentDocument;
YuZi_IMAGE_DOCUMENT = document.getElementById('BBSXPImageIframe').contentDocument;
YuZi_Media_DOCUMENT = document.getElementById('BBSXPMediaIframe').contentDocument;
YuZi_LINK_DOCUMENT = document.getElementById('BBSXPLinkIframe').contentDocument;
}
switch (cmd)
{
case 'YuZi_IMAGE':
var str = '';
str += '<div align="center">' +
'<form name="uploadForm" style="margin:0;padding:0;" method="post" onsubmit="javascript:if(parent.BBSXPDrawImageEnd()==false){return false;};">' +
'<input type="hidden" name="fileName" id="fileName" value="" />' +
'<table cellpadding="0" cellspacing="0" style="width:100%;font-size:12px;">' +
'<tr><td colspan="2"><table border="0" style="margin-bottom:3px;"><tr><td id="imgPreview" style="width:240px;height:180px;border:1px solid #AAAAAA;background-color:#FFFFFF;" align="center" valign="middle"> </td></tr></table></td></tr>' +
'<tr><td style="width:40px;padding-left:5px;">';
str += YuZi_LANG['REMOTE'];
str += '</td><td style="width:210px;padding-bottom:3px;">';
str += '<input type="text" id="imgLink" value="http://" maxlength="255" style="width:95%;border:1px solid #555555;" />';
str += '</td></tr><tr><td colspan="2" style="margin:5px;padding-bottom:5px;" align="center">' +
'<input type="button" name="button" value="'+YuZi_LANG['PREVIEW']+'" onclick="parent.BBSXPImagePreview();" /> ' +
'<input type="submit" name="button" id="'+cmd+'submitButton" value="'+YuZi_LANG['CONFIRM']+'" /> ' +
'<input type="button" name="button" value="'+YuZi_LANG['CANCEL']+'" onclick="parent.BBSXPDisableMenu();parent.BBSXPReloadIframe();" /></td></tr>' +
'</table></form></div>';
BBSXPDrawMenuIframe(YuZi_IMAGE_DOCUMENT, str);
break;
case 'YuZi_Replace':
var str = '<table border=0 cellpadding=2 style="background:'+YuZi_MENU_BG_COLOR+';width:100%;height:100%;font-size:12px;">';
str += '<form name=Replace method="Post">';
str += '<tr><td>'+YuZi_LANG['Search']+'<input type=text name=TextOne value=></td></tr>';
str += '<tr><td>'+YuZi_LANG['Replace']+'<input type=text name=TextTwo value=></td></tr>';
str += '<tr><td> <input type=checkbox id=Case /> <label for="Case">'+YuZi_LANG['CaseChkBox']+'</label></td></tr>';
str += '<tr><td align=center><input id="YuZi_ReplacesubmitButton" type="button" value=" '+YuZi_LANG['ReplaceButton']+' " onclick="parent.BBSXPReplace();"> <input type=button value=" '+YuZi_LANG['CANCEL']+' " onclick="parent.BBSXPDisableMenu();parent.BBSXPReloadIframe();"></td></tr>';
str += '</form></div>';
BBSXPDrawMenuIframe(YuZi_Replace_DOCUMENT, str);
break;
case 'YuZi_Media':
var str = '<table cellpadding="0" cellspacing="0" style="width:100%;font-size:12px;">' +
'<tr><td colspan="2"><table border="0"><tr><td id="MediaPreview" style="width:240px;height:180px;border:1px solid #AAAAAA;background-color:#FFFFFF;" align="center" valign="middle"> </td></tr></table></td></tr>' +
'<tr><td style="width:20px;padding:5px;">'+YuZi_LANG['REMOTE']+'</td>' +
'<td style="width:230px;padding-bottom:5px;padding-top:5px"><input type="text" id="MediaLink" value="http://" style="width:195px;border:1px solid #555555;" /></td></tr>' +
'<tr>' +
'<td colspan="2" style="margin:5px;padding-bottom:5px;padding-left:5px">'+YuZi_LANG['WIDTH']+':<input type=text id="MediaWidth" value=300 size=4 style="border:1px solid #555555;"> '+YuZi_LANG['HEIGHT']+':<input type=text id=MediaHeigth value=250 size=4 style="border:1px solid #555555;"></td>' +
'</tr>' +
'<tr><td colspan="2" style="padding-bottom:5px;padding-left:5px">'+YuZi_LANG['AutoStart']+':<input type="checkbox" id="AutoStart" value="1" checked /> '+YuZi_LANG['StatusBar']+':<input type="checkbox" value="1" id=ShowStatusBar checked></td></tr>' +
'<tr><td colspan="2" style="margin:5px;padding-bottom:5px;" align="center">' +
'<input type="button" name="button" value="'+YuZi_LANG['PREVIEW']+'" onclick="parent.BBSXPMediaPreview();" /> ' +
'<input type="submit" name="button" id="'+cmd+'submitButton" value="'+YuZi_LANG['CONFIRM']+'" onclick="parent.BBSXPDrawMediaEnd();" /> ' +
'<input type="button" name="button" value="'+YuZi_LANG['CANCEL']+'" onclick="parent.BBSXPDisableMenu();parent.BBSXPReloadIframe();" /></td></tr>' +
'</table>';
BBSXPDrawMenuIframe(YuZi_Media_DOCUMENT, str);
break;
case 'YuZi_LINK':
var str = '';
str += '<table cellpadding="0" cellspacing="0" style="width:100%;font-size:12px;">' +
'<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;">'+YuZi_LANG['TARGET']+'</td>' +
'<td style="padding-bottom:5px;"><select id="hyperLinkTarget"><option value="_blank" selected="selected">'+YuZi_LANG['NEW_WINDOW']+'</option><option value="">'+YuZi_LANG['CURRENT_WINDOW']+'</option></select></td></tr>' +
'<tr><td colspan="2" style="padding-bottom:5px;" align="center">' +
'<input type="submit" name="button" id="'+cmd+'submitButton" value="'+YuZi_LANG['CONFIRM']+'" onclick="parent.BBSXPDrawLinkEnd();" /> ' +
'<input type="button" name="button" value="'+YuZi_LANG['CANCEL']+'" onclick="parent.BBSXPDisableMenu();" /></td></tr>';
str += '</table>';
BBSXPDrawMenuIframe(YuZi_LINK_DOCUMENT, str);
break;
default:
break;
}
}
function BBSXPDrawMenuIframe(obj, str)
{
obj.open();
obj.write(str);
obj.close();
obj.body.style.color = YuZi_MENU_TEXT_COLOR;
obj.body.style.backgroundColor = YuZi_MENU_BG_COLOR;
obj.body.style.margin = 0;
obj.body.scroll = 'no';
}
function BBSXPDrawTableSelected(i, j)
{
var text = i.toString(10) + ' 乘 ' + j.toString(10) + ' 表格';
document.getElementById('tableLocation').innerHTML = text;
var num = 10;
for (m = 1; m <= num; m++) {
for (n = 1; n <= num; n++) {
var obj = document.getElementById('BBSXPTableTd' + m.toString(10) + '_' + n.toString(10) + '');
if (m <= i && n <= j) {
obj.style.backgroundColor = YuZi_MENU_SELECTED_COLOR;
} else {
obj.style.backgroundColor = '#FFFFFF';
}
}
}
}
//替换内容_开始
function BBSXPReplace()
{
var TextOne = YuZi_Replace_DOCUMENT.Replace.elements['TextOne'].value
var TextTwo = YuZi_Replace_DOCUMENT.Replace.elements['TextTwo'].value
var IgnoreCase = YuZi_Replace_DOCUMENT.Replace.elements['Case'].value
if (TextOne != null && TextTwo != null){
con = YuZi_EDITFORM_DOCUMENT.body.innerHTML;
if (IgnoreCase.toLowerCase() == "on"){
con = BBSXPRegEx(con,TextOne,TextTwo,true);
}
else{
con = BBSXPRegEx(con,a,b);
}
YuZi_EDITFORM_DOCUMENT.body.innerHTML = con;
}
else
BBSXPEditorForm.focus();
BBSXPDisableMenu();
BBSXPReloadIframe();
}
function BBSXPRegEx(s,a,b,i){
a = a.replace("?","\\?");
if (i==null){
var r = new RegExp(a,"gi");
}
else if (i) {
var r = new RegExp(a,"g");
}
else{
var r = new RegExp(a,"gi");
}
return s.replace(r,b);
}
//替换内容_结束
//插入图片 预览
function BBSXPImagePreview()
{
var url = YuZi_IMAGE_DOCUMENT.getElementById('imgLink').value;
if (url=="http://" || !url || url.length<10) {
alert(YuZi_LANG['INPUT_URL']);
return false;
}
var imgObj = YuZi_IMAGE_DOCUMENT.createElement("IMG");
imgObj.src = url;
var width = parseInt(imgObj.width);
var height = parseInt(imgObj.height);
var rate = parseInt(width/height);
if (width >240 && height <= 180) {
width = 240;
height = parseInt(width/rate);
} else if (width <=240 && height > 180) {
height = 180;
width = parseInt(height*rate);
} else if (width >240 && height > 180) {
height = 180;
width = parseInt(height*rate);
if (width >240) width = 240;
}
imgObj.style.width = width;
imgObj.style.height = height;
var el = YuZi_IMAGE_DOCUMENT.getElementById('imgPreview');
if (el.hasChildNodes()) {
el.removeChild(el.childNodes[0]);
}
el.appendChild(imgObj);
return imgObj;
}
//插入图片
function BBSXPDrawImageEnd()
{
var url = YuZi_IMAGE_DOCUMENT.getElementById('imgLink').value;
if (url=="http://" || !url || url.length<10) {
alert(YuZi_LANG['INPUT_URL']);
return false;
}
BBSXPEditorForm.focus();
var element = document.createElement("img");
element.src = url;
element.border = 0;
BBSXPSelect();
BBSXPInsertItem(element);
BBSXPDisableMenu();
BBSXPReloadIframe();
}
function BBSXPGetMediaHtmlTag(url)
{
var str = '<embed src="'+url+'" quality="high" AutoStart="true"></embed>';
return str;
}
//插入Media 预览
function BBSXPMediaPreview()
{
var url = YuZi_Media_DOCUMENT.getElementById('MediaLink').value;
if (url=="http://" || !url || url.length<10) {
alert(YuZi_LANG['INPUT_URL']);
return false;
}
var el = YuZi_Media_DOCUMENT.getElementById('MediaPreview');
el.innerHTML = BBSXPGetMediaHtmlTag(url);
}
//插入Media
function BBSXPDrawMediaEnd()
{
var url = YuZi_Media_DOCUMENT.getElementById('MediaLink').value;
var Width = YuZi_Media_DOCUMENT.getElementById('MediaWidth').value;
var Height = YuZi_Media_DOCUMENT.getElementById('MediaHeigth').value;
if (url=="http://" || !url || url.length<10) {
alert(YuZi_LANG['INPUT_URL']);
return false;
}
BBSXPEditorForm.focus();
BBSXPSelect();
var obj = document.createElement("EMBED");
obj.src = url;
obj.style.width = Width;
obj.style.height = Height;
obj.quality = "high";
obj.autostart = YuZi_Media_DOCUMENT.getElementById('AutoStart').checked;
obj.ShowStatusBar = YuZi_Media_DOCUMENT.getElementById('ShowStatusBar').checked;
BBSXPInsertItem(obj);
BBSXPDisableMenu();
}
//插入链接
function BBSXPDrawLinkEnd()
{
var range;
var url = YuZi_LINK_DOCUMENT.getElementById('hyperLink').value;
var target = YuZi_LINK_DOCUMENT.getElementById('hyperLinkTarget').value;
if (url.match(/http|ftp|https|mailto|wais|telnet|news|gopher|mms:\/\/.{3,}/) == null) {
alert(YuZi_LANG['INPUT_URL']);
return false;
}
BBSXPEditorForm.focus();
BBSXPSelect();
var element;
if (YuZi_BROWSER != 'IE') {
BBSXPExecuteValue('CreateLink', url);
element = YuZi_RANGE.startContainer.previousSibling;
element.target = target;
if (target) {
element.target = target;
}
}
BBSXPDisableMenu();
}
function BBSXPSelection()
{
if (YuZi_BROWSER == 'IE') {
YuZi_SELECTION = YuZi_EDITFORM_DOCUMENT.selection;
YuZi_RANGE = YuZi_SELECTION.createRange();
YuZi_RANGE_TEXT = YuZi_RANGE.text;
}
else {
YuZi_SELECTION = document.getElementById("BBSXPEditorForm").contentWindow.getSelection();
YuZi_RANGE = YuZi_SELECTION.getRangeAt(0);
YuZi_RANGE_TEXT = YuZi_RANGE.toString();
}
}
function BBSXPSelect()
{
if (YuZi_BROWSER == 'IE') {
YuZi_RANGE.select();
}
}
function BBSXPInsertItem(insertNode)
{
if (YuZi_BROWSER == 'IE') {
if (YuZi_SELECTION.type.toLowerCase() == 'control') {
YuZi_RANGE.item(0).outerHTML = insertNode.outerHTML;
}
else {
YuZi_RANGE.pasteHTML(insertNode.outerHTML);
}
}
else {
YuZi_SELECTION.removeAllRanges();
YuZi_RANGE.deleteContents();
var startRangeNode = YuZi_RANGE.startContainer;
var startRangeOffset = YuZi_RANGE.startOffset;
var newRange = document.createRange();
if (startRangeNode.nodeType == 3 && insertNode.nodeType == 3) {
startRangeNode.insertData(startRangeOffset, insertNode.nodeValue);
newRange.setEnd(startRangeNode, startRangeOffset + insertNode.length);
newRange.setStart(startRangeNode, startRangeOffset + insertNode.length);
}
else {
var afterNode;
if (startRangeNode.nodeType == 3) {
var textNode = startRangeNode;
startRangeNode = textNode.parentNode;
var text = textNode.nodeValue;
var textBefore = text.substr(0, startRangeOffset);
var textAfter = text.substr(startRangeOffset);
var beforeNode = document.createTextNode(textBefore);
var afterNode = document.createTextNode(textAfter);
startRangeNode.insertBefore(afterNode, textNode);
startRangeNode.insertBefore(insertNode, afterNode);
startRangeNode.insertBefore(beforeNode, insertNode);
startRangeNode.removeChild(textNode);
}
else {
if (startRangeNode.tagName.toLowerCase() == 'html') {
startRangeNode = startRangeNode.childNodes[0].nextSibling;
afterNode = startRangeNode.childNodes[0];
}
else {
afterNode = startRangeNode.childNodes[startRangeOffset];
}
startRangeNode.insertBefore(insertNode, afterNode);
}
newRange.setEnd(afterNode, 0);
newRange.setStart(afterNode, 0);
}
YuZi_SELECTION.addRange(newRange);
}
}
//清洁代码
function ClearCode(){
var htmlStr = YuZi_EDITFORM_DOCUMENT.body.innerHTML;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -