FCKeditor 插件开发 示例
(FCKeditor.地址是:http://www.fckeditor.net/.我下载的版本是:2.6.3。)
What ?
FCKeditor一直是web上编辑器的比较好的一个选择,他是开源的,而且效果不错。FCKeditor的插件是对FCKeditor的扩展功能。
Why?
尽管一般条件下FCKeditor能适应使用,但你可能对FCKeditor仅有的功能不满意,好.FCKeditor提供了插件开放功能,只要你能想到,你就做吧。
How?
我就一个简单的"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="你好";
FCKeditor插件语言的命名方式为:FCKLang.变量名="语言定义"
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,不懂?详细说明:
插件机制:注册命令-定义工具栏-注册到工具栏
注册命令::FCKCommands.RegisterCommand(命令名称,对话框命令)
对话框命令:FCKDialogCommand(命令名称,对话框标题,URl,宽度,高度)
这样注册命令就完成,然后定义一个工具栏
FCKToolbarButton(命令名称,按钮标题)
你最好添加一个图标:IconPath=图标地址
现在命令也注册完成,工具栏也定义好了,然后是添加:
FCKToolbarItems.RegisterItem(命令名称,工具栏);
注意:”Hello.html”就是你要显示html中应该包含如下语句.
var dialog = window.parent ;
var oEditor = dialog.InnerDialogLoaded() ;
var FCKLang = oEditor.FCKLang ;
</script>
OK.插件制作完毕了,怎么显示呢?
在Fckeditor的目录下找到 “fckconfig.js”,这是fckeditor的设置文件。找到
” FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ;”
添加:”FCKConfig.Plugins.Add(‘hello','zh-cn,en'); ”
解释:FCKConfig.Plugins.Add(插件名,'语言文件');其中语言文件是可选的,如果没有则自动设置。
然后在 “FCKConfig.ToolbarSets["Default"]=..”中的”[]”中随便添加'hello' (注意包含引号)。
OK…!完成
好,我们来重新确认一下FCKEditor插件开发的过程:
建立” fckplugin.js”-建立插件(语言文件等)-添加插件。
建立插件必要步骤:插注册命令-定义工具栏-注册到工具栏
FCKeditor 插件开发 示例的更多相关文章
- discuzX3后台管理插件开发示例一 用户表查询
上次的入门已经介绍了后台管理插件开发的基本步骤,下面简单写一个示例查询一下用户表 需要已完成以下操作: 1.已创建test后台管理插件 //详见 http://www.cnblogs.com/savo ...
- FCKeditor插件开发实例:uploadify多文件上传插件
FCKeditor是一个专门使用在网页上属于开放源代码的所见即所得文字编辑器.它志于轻量化,不需要太复杂的安装步骤即可使用.它可和PHP.JavaScript.ASP.ASP.NET.ColdFusi ...
- 【小试插件开发】给Visual Studio装上自己定制的功能来提高代码调试效率
背后的故事 随着项目需求的逐步增加,后端开发框架在我手上也慢慢重构为组件开发模式,整体结构类似于NopCommence.在这种结构中,每个组件所在的类库项目其实是生成到网站项目里指定的一个目录的,然后 ...
- 【开源】玩的就是开源 - DevFw
http://www.cnblogs.com/newmin/ 最近真的爱上开源了,将自己7年积累下来的部分代码,发布成为一个项目:DevFw 项目如下: 项目名称 描述 仓库 AtNet.DevFw. ...
- 【六年开源路】FineUI家族今日全部更新!
FineUI(开源版) 基于 ExtJS 的开源 ASP.NET 控件库 FineUI的使命 创建 No JavaScript,No CSS,No UpdatePanel,No ViewState ...
- Android平台本地(离线)打包指南 - Android Studio
预备环境 AndroidStudio开发环境,要求安装Android4.0或以上(API 14)SDK. 下载HBuilder离线打包Android版SDK(5+ SDK下载). 离线打包SDK目录说 ...
- uni-app开发经验分享十六:发布android版App的详细过程
开发环境 1. Android Studio下载地址:Android Studio官网 OR Android Studio中文社区 2. HBuilderX(开发工具) 3. App离线SDK下载:最 ...
- uni-app 安卓离线打包详细教程
借鉴 uni-app官方给出的文章http://ask.dcloud.net.cn/article/508(虽说是04年的) 预备环境 AndroidStudio开发环境,要求安装Android4.0 ...
- VsCode插件开发之入门示例
主要参考官网:https://code.visualstudio.com/api/get-started/your-first-extension 其实也就三步 一.安装环境 npm install ...
随机推荐
- php 之 类,对象(三)多态性,函数重载,克隆
一.三大特性之三 多态性(在php中表象不明显)1.概念:当父类引用指向子类实例时,由于子类对父类函数进行了重写,导致我们在使用该引用去调用相应的方法显示出的不同.2.发生条件:1.必须有继承 2. ...
- Android再学习-20141023-Intent-Thread
20141023-Android再学习 Intent对象的基本概念 Intent是Android应用程序组件之一 Intent对象在Android系统中表示一种意图 Intent当中最重要的内容是ac ...
- FeatureClass Copy
http://edndoc.esri.com/arcobjects/9.2/NET/c45379b5-fbf2-405c-9a36-ea6690f295b2.htm Method What is tr ...
- 在NGINX作反向代理,CI(CodeIgniter)的PHP框架下限制管理目录的IP的实现
这个搞得有点久,不过,还算完美解决. 主要是前端NGINX,后端也是NGINX. 前端的NGINX不好作相关的URL权限限制,因为所有的URL在CI里都要经过INDEX.PHP重定向. 并且,在后端N ...
- subTree
struct Tree() { int val; Tree *left, *right; Tree(int a): val(a), left(NULL), right(NULL){} } bool h ...
- Win8/8.1/10获得完整管理员权限的方法
WIN+R,运行对话框中输入gpedit.msc,开启组策略,然后一步步地在“计算机配置”-“Windows 设置”-“安全设置”-“本地策略”-“安全选项”,找到右侧的“用户账户控制:以管理员批准模 ...
- 【Xamarin 在Mac OS 上的部署安装环境】
******************没用Mac 的机子,也只能靠虚拟机了**********1 安装VMware 10 从网上下载即可2 下载MAC OS 10.9.5的安装镜像,网上有很多,最好使用 ...
- HDU 4444 Walk (离散化建图+BFS+记忆化搜索) 绝对经典
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4444 题意:给你一些n个矩形,给你一个起点,一个终点,要你求从起点到终点最少需要转多少个弯 题解:因为 ...
- python3-day3(内置函数)
1.内置函数 1>print(bytearray('王',encoding='utf8')) 2>print(bytes('王',encoding='utf8')) 3>bool(' ...
- Django之上传文件
使用Form表单上传文件 upload.html <!DOCTYPE html> <html lang="en"> <head> <met ...