(FCKeditor.地址是:[url=http://www.fckeditor.net/]
http://www.fckeditor.net/[/url].我下载的版本是:2.6.3。)
[b]What ?[/b]
FCKeditor一直是web上编辑器的比较好的一个选择,他是开源的,而且效果不错。FCKeditor的插件是对FCKeditor的扩展功能。
[b]Why?[/b]
尽管一般条件下FCKeditor能适应使用,但你可能对FCKeditor仅有的功能不满意,好.FCKeditor提供了插件开放功能,只要你能想到,你就做吧。
[b]How?[/b]
我就一个简单的"Hello"为例来介绍FCKeditor插件的开发(申明:俺也是菜鸟,有啥不对的地方,请指出来,大家进步啦。)
首先,进入FCKeditor编辑器目录下的editor文件下的plugins目录下。这个目录是放Fckeditor插件的。So,建立一个文件夹,命名为'hello'。
第二步,进入'hello'文件夹。建立一个"fckplugin.js"的文件。这是fckeditor插件的所必须的,主要是插件注册等等。
再建立语言文件。在'hello'文件夹下建立一个'lang'的文件夹。在'lang'文件夹下建立语言文件,Fckeditor插件的语言文件命名方式是:国家或地区.js。如中国是zh.js.简体中文是zh-cn.js.英文是en.js等等。我们建立两个"en.js"和"zh-cn.js"。
然后编辑语言文件。我们编辑"en.js"。写入以下内容:FCKLang.Hello="Hello";(注意包含";",js的代码嘛),在"zh-cn.js"中写入:FCKLang.Hello="你好";
[b]FCKeditor插件语言的命名方式为:FCKLang.变量名="语言定义"
[/b] OK,语言问题定义完成了,然后是插件定义。
打开第二步的"fckplugin.js"。
//注册
FCKCommands.RegisterCommand('hello',new FCKDialogCommand('hello',FCKLang.HelloB,FCKPlugins.Items['hello'].Path+"hello.html",200,200));
//定义工具栏
var NHello=new FCKToolbarButton('hello',FCKLang.Hello);
NHello.IconPath=FCKPlugins.Items['hello'].Path+'hello.GIF';
//注册
FCKToolbarItems.RegisterItem('hello',NHello);
OK,不懂?详细说明:
插件机制:[b]注册命令-定义工具栏-注册到工具栏[/b]
[b]注册命令::FCKCommands.RegisterCommand(命令名称,对话框命令)[/b]
[b]对话框命令:FCKDialogCommand(命令名称,对话框标题,URl,宽度,高度)[/b]
这样注册命令就完成,然后定义一个工具栏
[b]FCKToolbarButton(命令名称,按钮标题)[/b]
你最好添加一个图标:[b]IconPath=图标地址[/b]
现在命令也注册完成,工具栏也定义好了,然后是添加:
[b]FCKToolbarItems.RegisterItem(命令名称,工具栏);[/b]
注意:”Hello.html”就是你要显示html中应该包含如下语句.
<script language="javascript">
var dialog = window.parent ;
var oEditor = dialog.InnerDialogLoaded() ;
var FCKLang = oEditor.FCKLang ;
</script>
OK.插件制作完毕了,怎么显示呢?
在Fckeditor的目录下找到 “fckconfig.js”,这是fckeditor的设置文件。找到
[b]” FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ;”[/b]
添加:”[b]FCKConfig.Plugins.Add(‘hello','zh-cn,en'); [/b] ”
解释:[b]FCKConfig.Plugins.Add(插件名,'语言文件');[/b]其中语言文件是可选的,如果没有则自动设置。
然后在 “[b]FCKConfig.ToolbarSets["Default"]=..[/b]”中的”[]”中随便添加[b]'hello' (注意包含引号)[/b]。
OK…!完成
好,我们来重新确认一下FCKEditor插件开发的过程:
[b] 建立” fckplugin.js”-建立插件(语言文件等)-添加插件。[/b]
[b] 建立插件必要步骤:插注册命令-定义工具栏-注册到工具栏[/b]