JavaScript
调用方式:
__________________________________________________
<script
type="text/javascript" src="FCKeditor/fckeditor.js"></script>
<textarea name="content" cols="80"
rows="4">
</textarea>
<script
type="text/javascript">
var FCKeditor = new FCKeditor("content");
FCKeditor.BasePath = "FCKeditor/";
oFCKeditor.Height = 400;
oFCKeditor.ToolbarSet = "Default";
oFCKeditor.ReplaceTextarea();
</script>
如果想要使用从数据库读来的文本数据或者是后台来自文件的 txt/html
文本数据。
只要在
<textarea name="content"
cols="80"
rows="4">
</textarea>
__________________________________________________
中加入自己的显示内容的 formbean
对应字段即可
__________________________________________________
<textarea
name="content" cols="80" rows="4">
<c:out value="${contentData}"
/>
</textarea>
__________________________________________________
这样内容就会被显示在 FCKeditor
编辑框中了,点击提交按钮以后就可以在后台的相应 java action
中得到 content 参数中的内容就是页面上 FCKeditor
中的内容数据了。可以在 struts/jsf
中使用。
由于给 FCKeditor
瘦身,所以常会报缺少对象支持等错误,只要在 FCKeditor/editor/lang
中加上相应的js 语言文件即可。如果加载页面失败(FCKeditor
未定义)还有一个可能就是引用 FCKeditor/fckeditor.js
文件路径不对!
关于 FCKeditor
瘦身要点如下:
1.将 FCKeditor
目录下及子目录下所有以“_”下划线开头的文件夹删除
2.FCKeditor
根目录下只保留 fckconfig.js, fckeditor.js,
fckstyles.xml, fcktemplates.xml,其余全部删除
3.将 editor/filemanager/upload
目录下文件及文件夹清空
4.将
/editor/filemanager/browser/default/connectors/ 下的所有文件删除
5.还可以将 editor/skins
目录下的皮肤文件删除,只留下 default 一套皮肤(如果你不需要换皮肤的话
6.还可以将 editor/lang
目录下文件删除,只保留 en.js, fcklanguagemanager.js,
zh-cn.js, zh.js 文件
7.如果你是使用 javascript
来调用加载
FCKeditor,那么就不需要在 web.xml 中配置 fckeditor
的 tag 文件。
8.还有一个问题刚开始使用 FCKeditor
的人常会遇到就怎么控制它的 toolbar 的大小和元素排列,其实很简单。
在 fckconfig.js
中用这样的标签[]来划分每行的元素的多少,这样就可以控制 toolbar
的长短和大小了,具体示例参看:fckconfig.js
中的
toolbarset["Default"]
用 fckconfig.js
中的一些选项来控制 toolbarset
中控件的功能,实现功能裁剪:
1):取消超链接中的浏览服务器和上传功能,方法如下:
__________________________________________________
FCKConfig.LinkBrowser
= true;
FCKConfig.LinkUpload = true;
改为:
FCKConfig.LinkBrowser = false;
FCKConfig.LinkUpload = false;
__________________________________________________
2):取消图片链接中的浏览服务器和上传功能,方法如下:
__________________________________________________
FCKConfig.ImageUpload
= true;
FCKConfig.ImageBrowser = true;
改为:
FCKConfig.ImageUpload = false;
FCKConfig.ImageBrowser = false;
__________________________________________________
3):Dlg Button
中取消高级功能,方法如下:
FCKConfig.LinkDlgHideAdvanced =
false ;
FCKConfig.ImageDlgHideAdvanced = false ;
改为:
FCKConfig.ImageDlgHideAdvanced
= true ;
FCKConfig.LinkDlgHideTarget = true ;
__________________________________________________
fckconfig.js总配置文件,可用记录本打开,修改后将文件存为utf-8
编码格式。找到:
__________________________________________________
FCKConfig.TabSpaces
= 0;
改为:
FCKConfig.TabSpaces = 1;
即在编辑器域内可以使用Tab键。
如果你的编辑器还用在网站前台的话,比如说用于留言本或是日记回复时,那就不得不考虑安全了,
在前台千万不要使用Default的toolbar,要么自定义一下功能,要么就用系统已经定义好的Basic,
也就是基本的toolbar,找到:
__________________________________________________
FCKConfig.ToolbarSets["Basic"]
= ['Bold', 'Italic', '-', 'OrderedList', 'UnorderedList', '-', /*'Link',
*/'Unlink', '-', 'Style', 'FontSize', 'TextColor', 'BGColor', '-', 'Smiley',
'SpecialChar', 'Replace', 'Preview'];
这是改过的Basic,把图像功能去掉,把添加链接功能去掉,因为图像和链接和flash和图像按钮添加功能都能让前台页直接访问和上传文件,
fckeditor还支持编辑域内的鼠标右键功能。
FCKConfig.ContextMenu =
['Generic', /*'Link', */'Anchor', /*'Image', */'Flash', 'Select', 'Textarea',
'Checkbox', 'Radio', 'TextField', 'HiddenField', /*'ImageButton', */'Button',
'BulletedList', 'NumberedList', 'TableCell', 'Table', 'Form'];
这也是改过的把鼠标右键的"链接、图像,FLASH,图像按钮"功能都去掉。
找到:
FCKConfig.FontNames = 'Arial;
Comic Sans MS; Courier New; Tahoma; Times New Roman; Verdana';
加上几种我们常用的字体
FCKConfig.FontNames =
'宋体; 黑体; 隶书; 楷体_GB2312; Arial; Comic Sans MS;
Courier New; Tahoma; Times New Roman; Verdana';
三种方法调用FCKeditor
1.FCKeditor自定义标签
2.script脚本语言调用
3.FCKeditor API
调用
1、适时打开编辑器
__________________________________________________
很多时候,我们在打开页面的时候不需要直接打开编辑器,而在用到的时候才打开,这样一来有很好的用户体验,另一方面可以消除FCK在加载时对页面打开速度的影响,点击"Open
Editor"按钮后才打开编辑器界面。
实现原理:
使用JAVASCRIPT版的FCK,在页面加载时(未打开FCK),创建一个隐藏的TextArea域,这个TextArea
的name和ID要和创建的FCK实例名称一致,然后点击"Open
Editor"按钮时,通过调用一段函数,使用FCK的ReplaceTextarea()方法来创建FCKeditor,代码如下:
__________________________________________________
<script
type="text/javascript">
<!–
function showFCK(){
var FCKeditor =
new FCKeditor( 'fbContent' ) ;
oFCKeditor.BasePath = '/FCKeditor/' ;
oFCKeditor.ToolbarSet = 'Basic' ;
oFCKeditor.Width = '100%' ;
oFCKeditor.Height = '200' ;
oFCKeditor.ReplaceTextarea() ;
}
</script>
<textarea name="fbContent"
>
__________________________________________________
oEditor.Commands.GetCommand('FitWindow').Execute();
__________________________________________________
相关文章: