📄 editor.js
字号:
}
}
//图片功能
function isImageSelected() {
textEdit.focus()
if (textEdit.document.selection.type == "Control") {
var oControlRange = textEdit.document.selection.createRange();
if (oControlRange(0).tagName.toUpperCase() == "IMG") {
selectedImage = textEdit.document.selection.createRange()(0);
return true;
}
}
}
function sImgDlg(){
res = showModalDialog('sImg.php', null, 'dialogWidth: 330px; dialogHeight: 180px; center: yes; resizable: no; scroll: no; status: no;');
if(res == 'lib')
res = showModalDialog('lib.php', null, 'dialogWidth: 770px; dialogHeight: 450px; center: yes; resizable: no; scroll: no; status: no;');
if(res)
return res;
}
function sNewImg(){
if(isImageSelected())
temp = selectedImage;
else
temp = 0;
res = sImgDlg();
if(res){
// document.forms.imgUpl.nSel.outerHTML = '<select name=nSel>' + document.forms.imgUpl.nSel.innerHTML + '<option value=images/' + res.replace(/^.*\//ig, '') + '">' + res.replace(/^.*\//ig, '') + '</option></select>';
// uplTd.style.display = 'block';
textEdit.focus();
textEdit.document.execCommand("InsertImage", false, res);
if(isImageSelected() && temp){
selectedImage.style.position = temp.style.position;
selectedImage.style.zIndex = temp.style.zIndex;
selectedImage.style.top = temp.style.top;
selectedImage.style.left = temp.style.left;
selectedImage.style.borderColor = temp.style.borderColor;
selectedImage.border = temp.border;
selectedImage.style.alt = temp.alt;
selectedImage.hspace = temp.hspace;
selectedImage.vspace = temp.vspace;
selectedImage.align = temp.align;
}
}
}
function sImgProps(){
if(isImageSelected()){
sPrePos = selectedImage.style.position;
res = window.showModalDialog('sImgProp.php', selectedImage, 'dialogWidth: 360px; dialogHeight: 320px; center: yes; resizable: no; scroll: no; status: no;');
if(res){
for(key in res)
if(key == 'style'){
for(sub_key in res.style)
selectedImage.style[sub_key] = res.style[sub_key];
}else{
selectedImage[key] = res[key];
}
if(!res.align)
selectedImage.removeAttribute('align');
if(sPrePos.match(/^absolute$/i) && !selectedImage.style.position.match(/^absolute$/i)){
sFired = selectedImage.parentElement;
while(!sFired.tagName.match(/^table$|^body$/i))
sFired = sFired.parentElement;
if(sFired.tagName.match(/^table$/i) && sFired.style.position.match(/absolute/i));
sFired.outerHTML = selectedImage.outerHTML;
}else if(!sPrePos.match(/^absolute$/i) && selectedImage.style.position.match(/^absolute$/i))
selectedImage.outerHTML = '<table style="position: absolute;"><tr><td>' + selectedImage.outerHTML + '</td></tr></table>';
}
}else
alert('编辑图片属性时,请首先选中一张图片');
}
//007
function isFlashSelected() {
textEdit.focus()
if (textEdit.document.selection.type == "Control") {
var oControlRange = textEdit.document.selection.createRange();
if (oControlRange(0).tagName.toUpperCase() == "OBJECT") {
selectedFlash = textEdit.document.selection.createRange()(0);
return true;
}
}
}
function sFlashProps(){
if(isFlashSelected()){
sPrePos = selectedFlash.style.position;
flashvar = window.showModalDialog('sFlashProp.php', selectedFlash, 'dialogWidth: 400px; dialogHeight: 370px; center: yes; resizable: no; scroll: no; status: no;');
if(flashvar){
flashvar = flashvar.split("*");
var flash_path = flashvar[0];
var flash_name = flashvar[1];
var flash_border = flashvar[2];
var flash_title = flashvar[3];
var flash_width = flashvar[4];
var flash_width_unit = flashvar[5];
var flash_height = flashvar[6];
var flash_height_unit = flashvar[7];
var flash_hspace = flashvar[8];
var flash_vspace = flashvar[9];
var flash_autoplay = flashvar[10];
var flash_menu = flashvar[11];
var flash_loop = flashvar[12];
var flash_font = flashvar[13];
var flash_align = flashvar[14];
var flash_quality = flashvar[15];
var flash_scale = flashvar[16];
var string = "<object codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0\" height=\"" + flash_height + flash_height_unit + "\" width=\"" + flash_width + flash_width_unit + "\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" name=\"" + flash_name + "\" hspace=\"" + flash_hspace + "\" vspace=\"" + flash_hspace + "\" title=\"" + flash_title + "\" border=\"" + flash_border + "\">";
string += "<param name=\"_cx\" value=\"12700\">";
string += "<param name=\"_cy\" value=\"8467\">";
string += "<param name=\"FlashVars\" value=\"\">";
string += "<param name=\"Movie\" value=\"" + flash_path + "\">";
string += "<param name=\"Src\" value=\"" + flash_path + "\">";
string += "<param name=\"WMode\" value=\"Window\">";
string += "<param name=\"Play\" value=\"" + flash_autoplay +"\">";
string += "<param name=\"Loop\" value=\"" + flash_loop +"\">";
string += "<param name=\"Quality\" value=\"" + flash_quality + "\">";
string += "<param name=\"SAlign\" value=\"" + flash_align + "\">";
string += "<param name=\"Menu\" value=\"" + flash_menu + "\">";
string += "<param name=\"Base\" value=\"\">";
string += "<param name=\"AllowScriptAccess\" value=\"always\">";
string += "<param name=\"Scale\" value=\"" + flash_scale + "\">";
string += "<param name=\"DeviceFont\" value=\"" + flash_font + "\">";
string += "<param name=\"EmbedMovie\" value=\"0\">";
string += "<param name=\"BGColor\" value=\"\">";
string += "<param name=\"SWRemote\" value=\"\">";
string += "<param name=\"MovieData\" value=\"\">";
string += "<embed src=\"" + flash_path + "\" quality=\"" + flash_quality + "\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" type=\"application/x-shockwave-flash\" width=\"" + flash_width + flash_width_unit + "\" height=\"" + flash_height + flash_height_unit + "\"></embed>";
string += "</object>";
selectedFlash.outerHTML = string;
}
}else
alert('编辑FLASH属性时,请首先选中一张FLASH');
}
//查找
function findtext(searchval,retval){
selectRange();
edit.collapse(false);
if (edit.findText(searchval,1000000000,retval)) {
edit.select();
findreplace()
} else {
var startfromtop = confirm("搜索完成,是否要从顶部开始重新搜索?");
if (startfromtop){
edit.expand("textedit");
edit.collapse();
edit.select();
findtext(searchval,retval);
}
}
}
//替换
function replacetext(searchval,strreplace,retval){
selectRange();
if (retval == 4){
if (edit.text == searchval) edit.text = strreplace;
} else {
if (edit.text.toLowerCase() == searchval.toLowerCase()) edit.text = strreplace;
}
findtext(searchval,retval);
}
function findreplace () {
var string = window.showModalDialog('findreplace.php', null, 'dialogWidth: 320px; dialogHeight: 160px; center: yes; resizable: no; scroll: no; status: no;');
if (string) {
string = string.split("*");
var strsearch = string[0];
var strreplace = string[1];
var blnmatchcase = string[2];
var blnmatchword = string[3];
var type = string[4];
var retval = string[5];
}
if (type == "find") {
findtext(strsearch,retval);
} else if (type == "replace") {
replacetext (strsearch,strreplace,retval);
}
}
//
function sUplDlg(){
res = showModalDialog('sUpl.php', null, 'dialogWidth: 330px; dialogHeight: 225px; center: yes; resizable: no; scroll: no; status: no;');
if(res){
// document.forms.fileUpl.nSel.outerHTML = "<select name=nSel>" + document.forms.fileUpl.nSel.innerHTML + "<option value=uploads/' + res + '>' + res + '</option></select>";
// upfTd.style.display = "block";
}
textEdit.focus();
}
function sUplMng(){
res = showModalDialog('sMgr.php', null, 'dialogWidth: 330px; dialogHeight: 225px; center: yes; resizable: no; scroll: yes; status: no;');
if(res){
}
}
///////////////////
function swapModes(Mode) {
switch(Mode){
case 1:
if (format == "ABC"){
textEdit.document.body.innerHTML = textEdit.document.body.innerText;
textEdit.document.body.style.fontFamily = "";
textEdit.document.body.style.fontSize ="";
}
else{
initHTML = textEdit.document.body.innerHTML;
initEditor();
}
format = "HTML";
break;
case 2:
if (format == "PREVIEW"){
initHTML = textEdit.document.body.innerHTML;
initEditor();
}
textEdit.document.body.innerText = textEdit.document.body.innerHTML;
textEdit.document.body.style.fontFamily = "Verdana";
textEdit.document.body.style.fontSize = "9pt";
format = "ABC";
break;
case 3:
var strHTML = "";
if(format == "ABC"){
strHTML = textEdit.document.body.innerText;
textEdit.document.body.style.fontFamily = "";
textEdit.document.body.style.fontSize ="";
}
else{
strHTML = textEdit.document.body.innerHTML;
}
format = "PREVIEW";
textEdit.document.designMode="Off";
textEdit.document.open();
textEdit.document.write(strHTML);
textEdit.document.close();
if(textEdit.document.styleSheets.length == 0){
textEdit.document.createStyleSheet();
var oSS = textEdit.document.styleSheets[0];
//oSS.addRule("TABLE.ubb","border: 1px solid #A9A9A9;FONT-SIZE: 9pt; ");
oSS.addRule("TABLE","FONT-SIZE: 9pt; ");
//oSS.addRule("TD.ubb","border: 1px solid #A9A9A9;FONT-SIZE: 9pt; ");
oSS.addRule("TD","FONT-SIZE: 9pt; ");
oSS.addRule("BODY","FONT-SIZE: 9pt;");
oSS.addRule("IMG","border: 0");
}
break;
default:
return(0);
}
textEdit.focus();
return(1);
}
//get type
function specialtype(Mark,tiaojian){
if (format == "HTML"){
var strHTML;
setFocus();
selectRange();
if (RangeType == "Text"){
strHTML = "<" + Mark + " " + tiaojian + " " + ">" + edit.text + "</" + Mark + ">";
edit.pasteHTML(strHTML);
textEdit.focus();
edit.select();
}
}
}
function pasteHTML(HTML){
if (format == "HTML"){
setFocus();
selectRange();
edit.pasteHTML(HTML);
textEdit.focus();
if (RangeType != "Control") edit.select();
}
}
function initEditor() {
textEdit.document.designMode="On";
textEdit.document.open();
textEdit.document.write(initHTML);
textEdit.document.close();
initHTML = "";
if(textEdit.document.styleSheets.length == 0){
textEdit.document.createStyleSheet();
var oSS = textEdit.document.styleSheets[0];
//oSS.addRule("TABLE.ubb","border: 1px solid #A9A9A9;FONT-SIZE: 9pt; ");
oSS.addRule("TABLE","FONT-SIZE: 9pt; ");
//oSS.addRule("TD.ubb","border: 1px solid #A9A9A9;FONT-SIZE: 9pt; ");
oSS.addRule("TD","FONT-SIZE: 9pt; ");
oSS.addRule("IMG","border: 0");
oSS.addRule("BODY","font-size: 9pt");
}
}
function init() {
initEditor();
with (parent){
if (loaded){
parent.status = "";
/*with (parent.document){
all.editor.style.display = "block";
forms[0].body.style.display = "none";
forms[0].body.title = "";
}*/
}
else
loaded = 1;
}
textEdit.document.oncontextmenu = new Function("return showContextMenu(textEdit.event);");
}
initHTML = parent.parent.strHTML;
window.onload = init;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -