fckeditor 插件开发参考文档

所属分类: 网络编程 / 网页编辑器 阅读数: 916
收藏 0 赞 0 分享

一:插件的目录结构
插件目录的名称必须和插件的名称一样,而且目录里面必须包含一个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 ) ;


https://www.jb51.net/article/18660.htm

更多精彩内容其他人还在看

整合ckeditor+ckfinder,解决上传文件路径问题

现在fckeditor已经改名为ckeditor,上传控件也分离为ckfinder,按照说明文档的默认配置会出现上传路径不正确的情况,因为我们的网站可以通过定义默认网站、虚拟目录、以及放在网站的子目录下进行访问
收藏 0 赞 0 分享

在kindEditor中获取当前光标的位置索引的实现代码

一直在用KindEditor,今天要用到光标的位置,然后就gg一下办法,后来发现这东西的编辑区域居然是iframe里面的一个body,不是textarea/input,后来就翻开了他的代码看,发现有个insertHtml
收藏 0 赞 0 分享

KindEditor 4.x 在线编辑器常用方法小结

要修改默认后台程序处理文件,修改plugins(插件文件夹)下的JavaScript内容fileManagerJson改为自己使用程序语言
收藏 0 赞 0 分享

javascript开发随笔3 开发iframe富文本编辑器的一点体会

前段时间有个需求是开发富文本编辑器,这个之前随做过,但看了需求,发现有些地方还需google
收藏 0 赞 0 分享

TinyMCE syntaxhl插入代码后换行的修改方法

上次搞了个整合insert code的TinyMCE编辑器,非常好用。但有一个缺点:每次插入代码后,光标都会停留在pre标记里面,打回车出不来,必须编辑HTML
收藏 0 赞 0 分享

Fckeditor编辑器内容长度限制统计实现方法

Fckeditor是一种大家常用的编辑器,但是他不能像网页表单那样利用document.getelementbyid能获取得到值了,它必须通过 FCKeditorAPI来操作,下面看看Fckeditor内容长度测试
收藏 0 赞 0 分享

PHP中CKEditor和CKFinder配置问题小结

PHP中CKEditor和CKFinder配置问题小结,使用CKEditor和CKFinder编辑器的朋友可以参考下
收藏 0 赞 0 分享

ckeditor的使用和配置方法分享

CKEditor是新一代的FCKeditor,是一个重新开发的版本。CKEditor是全球最优秀的网页在线文字编辑器之一,因其惊人的性能与可扩展性而广泛的被运用于各大网站
收藏 0 赞 0 分享

FCKeditor 2.6.6在ASP中的安装及配置方法分享

FCKeditor目前的最新版本是2.6.6,在网上搜索此版本的配置方法,发现很少有asp的配置方法,以下就把自己的一些配置经验分享给有需要的你。
收藏 0 赞 0 分享

FCKeditor 2.6.5 ASP环境安装配置使用说明

今天用到在线编辑器在asp环境下上传竟然无效。找了好久才找到这介绍,现备份于此,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多