鄂尔多斯个人售房:FCKeditor的精简及修改

来源:百度文库 编辑:九乡新闻网 时间:2024/04/27 18:33:00
删除所有”_”开头的文件和文件夹
删除FCKeditor的目录下:
fckeditor.afp
fckeditor.asp
fckeditor.cfc
fckeditor.cfm
fckeditor.lasso
fckeditor.pl
fckeditor.py
htaccess.txt
license.txt
删除语言包editorlang中除中文和英文以外的语言
删除skin目录下除默认皮肤以外的文件夹
filemanager/browser/default/connectors/目录下除php以外的文件
filemanager/upload/目录下除php以外的文件
如果你不想要表情包 删除 editorimagessmiley下的msn文件夹及表情按钮
好了 精简完毕

修改:

路径修改:
fckeditor.js中的this.BasePath改为编辑器所在文件夹名
fckeditor_php4.php和fckeditor_php5.php中的BasePath改为编辑器所在文件夹名

编辑器宽度和高度:
fckeditor_php4.php和fckeditor_php5.php

$this->Width = '100%' ; //编辑器宽度
$this->Height = '200' ; //高度
$this->ToolbarSet = 'Default' ; //工具栏样式 Default 或者Basic

fckconfig.js中修改 常用的
FCKConfig.DefaultLanguage = 'zh-cn' ;//这个是默认语言包 繁体是zh
FCKConfig.TabSpaces = 1 ;//允许在编辑器中使用Tab键 ‘0’为禁止
FCKConfig.ToolbarSets["Default"] = //在这里修改工具栏的图标按钮 有很多功能用不上可以在这精简
FCKConfig.EnterMode = 'p' ; // p | div | br 定义回车键
FCKConfig.ShiftEnterMode = 'br' ; // p | div | br 定义shift+回车键
FCKConfig.Keystrokes = //这里定义键盘快建方式 如ctrl+c ctrl+a ctrl+x
FCKConfig.FontNames //定义字体
FCKConfig.FontSizes //定义文字大小
var _FileBrowserLanguage = 'php' ;
var _QuickUploadLanguage = 'php' ;//指定文件浏览及上传使用的语言 我用的php
FCKConfig.SmileyPath = //这以下的就是定义表情了

editorfilemanagerbrowserdefaultconnectorsphpconfig.php
editorfilemanageruploadphpconfig.php
$Config[’Enabled’] 是否允许上传
$Config[’UserFilesPath’] 默认上传路径

增加按钮有以下几步:

1、为按钮增加图片:
FCK的所有按钮图片是存放在一个图片文件里的,这一点比较独特,文件存放在相应皮肤目录下,如:/FCK/skins/silever /fck_strip.gif。通过Fireworks或Phtoshop打开该文件可以发现一个很长的图片,里面包含所有按钮的图片,现在您可以在该图片的最下面增加您自定义的按钮,注意,每个按钮的尺寸是16*16px。

2、为按钮增加功能代码:
增加按钮需要对FCK/editor/js目录中的两个核心文件进行修改:fckeditorcode_gecko.js和 fckeditorcode_ie.js,前者是使用于gecko核心的浏览器如Firefox等,而后者应用于以IE为核心的浏览器如MyIE(傲游)等,这两个文件大体是相似的,仅有微小差别,在此我们基本无须担心。
修改的方法非常简单,基本是一个照葫芦画瓢的过程,首先我们找一个与我们将要添加的按钮功能相似的一个按钮,这里我们选择了Newpage,这是一个清空编辑器以备新建一个文件的按钮。首先我们修改fckeditorcode_ie.js,fckeditorcode_gecko.js直接复制更改的代码就可以了。

打开fckeditorcode_ie.js,你会发现一个按钮的功能定义分三大部分:

A、功能原型
// 按钮功能原型
var FCKNewPageCommand=function(){this.Name='NewPage';};
FCKNewPageCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();FCK.SetHTML('');FCKUndo.Typing=true;};
FCKNewPageCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};

var FCKMyAlbumCommand=function(){this.Name='DISPLAY: none';};
FCKMyAlbumCommand.prototype.Execute=function(){if(typeof(parent.showMyAlbum)=="function"){parent.showMyAlbum(FCK);}else{alert(FCKLang.NoAlbum);}};
FCKMyAlbumCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};

B、功能的实例化
case 'NewPage':B=new FCKNewPageCommand();break;
case 'MyAlbum':B=new FCKMyAlbumCommand();break;

C、按钮的显示
case 'NewPage':B=new FCKToolbarButton('NewPage',FCKLang.NewPage,null,null,true,null,4);break;
case 'MyAlbum':B=new FCKToolbarButton('MyAlbum',FCKLang.MyAlbum,null,null,true,null,67);break;

上面代码中第一部分是Newpage的原代码,后一部分是我们自定义的代码,您一看应该明白怎么回事了吧?仅红色部分和名称不同而已!而红色部分就是我们的自定义功能。
FCKLang是语言包对象,您只要打开FCK/editor/lang/下面的相应语言包添加相应的名称属性就可以了,比如:MyAlbum打开我的像册。注意大小写!至此我们的添加工作已完成