当前位置: 首页 > 图文教程 > 网络编程 > 网页编辑器 > fckeditor 插件开发参考文档

网页编辑器
FCKeditor 2.0 简化和使用
jsp fckeditor 上传中文图片乱码问题的解决方法
IE8 Fckedit2.6.X不兼容
fckeditor php上传文件重命名的设置
FCKeditor 新闻组件的一些程序漏洞
FckEditor 配置手册中文教程详细说明
Windows Live Writer 实现代码高亮
FckEditor 中文配置手册详细说明
FCKEidtor 自动统计输入字符个数(IE)
nicedit 轻量级编辑器 使用心得
FCKEditor 表单提交时运行的代码
FCKeditor 插件开发 示例(详细版本)
fckeditor 插件实例 制作步骤
fckeditor 插件开发参考文档
fckeditor 常用函数
FCKeditor ASP.NET 上传附件研究
FCKEditor SyntaxHighlighter整合实现代码高亮显示
HTML 编辑器 FCKeditor使用详解
fckeditor 代码语法高亮
eWebEditor 辑器按钮失效 IE8下eWebEditor编辑器无法使用的解决方法

网页编辑器 中的 fckeditor 插件开发参考文档


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 69 ::
收藏到网摘: n/a

个人觉得这文章很适合初开发FCK插件的朋友~,对于插件的开发的实例可以看我们上一篇发表的文字。

一:插件的目录结构
插件目录的名称必须和插件的名称一样,而且目录里面必须包含一个fckplugin.js文件。可选包含一个lang目录用来实现界面的国际化。每一个文件定义一种语言,文件名不包含.js,用FCKConfig.Plugins.Add()注册。如果实现的插件命令没有界面,也可以不需要支持任何语言。
比如:findreplace插件的目录结构如下:
/editor/plugins/findreplace/fckplugin.js
/editor/plugins/findreplace/lang/en.js
/editor/plugins/findreplace/lang/zh.js
在fckplugin.js文件中定义你的插件,同时也应该注册改命令,以及创建一个工具栏按钮。
注册代码说明:

复制代码 代码如下:

//注册命令,RegisterCommand(命令名,命令)
FCKCommands.RegisterCommand(
'My_Find',
new FCKDialogCommand(
FCKLang['DlgMyFindTitle'],
FCKLang['DlgMyFindTitle'],
FCKConfig.PluginsPath + 'findreplace/find.html', 340, 170));
FCKCommands.RegisterCommand('My_Replace',
new FCKDialogCommand(
FCKLang['DlgMyReplaceTitle'],
FCKLang['DlgMyReplaceTitle'],
FCKConfig.PluginsPath + 'findreplace/replace.html', 340, 200)) ;
//创建工具栏按钮,现创建,再注册。
var oFindItem = new FCKToolbarButton('My_Find', FCKLang['DlgMyFindTitle']);
oFindItem.IconPath = FCKConfig.PluginsPath + 'findreplace/find.gif' ;
FCKToolbarItems.RegisterItem( 'My_Find', oFindItem ) ;
var oreplaceItem = new FCKToolbarButton( 'My_Replace', FCKLang['DlgMyReplaceTitle']);
oreplaceItem.IconPath = FCKConfig.PluginsPath + 'findreplace/replace.gif';
FCKToolbarItems.RegisterItem('My_Replace', oreplaceItem);

二:安装插件:
安装前把解压的包拷贝到editor/plugins目录下,然后按下列步骤进行:
1、先确定按钮在工具栏的位置
最好在定制的配置文件中,新写一个工具栏来包含新的插件。
定制配置文件:
复制代码 代码如下:

FCKConfig.ToolbarSets['PluginTest'] = [
['Source'],
['Placeholder'],
['My_Find', 'My_Replace'],
['Table','-',
'TableInsertRow', 'TableDeleteRows',
'TableInsertColumn', 'TableDeleteColumns',
'TableInsertCell', 'TableDeleteCells',
'TableMergeCells', 'TableSplitCell'
],
['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','About']
] ;

2:添加插件同样,可以直接在定制文件中添加插件。可以直接把插件放置到默认目录下,或者在FCKConfig.Plugins.Add方法里面的第三个参数指定插件所在的位置。
//代码分析:
引用内容
复制代码 代码如下:

FCKConfig.Plugins.Add( pluginName, availableLanguages, pathToPlugin )

pluginName: 插件名称或者插件目录名称.
availableLanguages: 逗号分割的可用语言列表.
pathToPlugin: 绝对路径,指插件的所占目录,包括插件本身一层目录
在默认位置添加插件
引用内容
复制代码 代码如下:

FCKConfig.Plugins.Add( 'findreplace', 'en,it' ) ;

在其他位置添加插件,在add方法传递插件的绝对路径。
引用内容
复制代码 代码如下:

FCKConfig.PluginsPath = FCKConfig.BasePath.substr(0, FCKConfig.BasePath.length - 7) + '_samples/_plugins/' ;
var sOtherPluginPath = FCKConfig.BasePath.substr(0, FCKConfig.BasePath.length - 7) + 'editor/plugins/' ;
FCKConfig.Plugins.Add( 'placeholder', 'en,it', sOtherPluginPath ) ;
FCKConfig.Plugins.Add( 'tablecommands', null, sOtherPluginPath ) ;

http://www.ruanchen.com/rticle/18660.htm