1.放在多文件中

第一步:config.js中

config.extraPlugins = '插件名称';//注册插件,extraPlugins只允许出现一次,你如果之前有新增别的插件,那么用逗号分隔

第二步:plugins文件夹下新建:插件名称 文件夹

第三步:
1:在plugins/插件名称/下新建plugin.js;
2:在plugins/插件名称/下新建 dialogs文件夹,并在其内新建 "插件名称.js"

(function() {
CKEDITOR.plugins.add("插件名称", {
requires: ["dialog"],
init: function(a) {
a.addCommand("插件名称", new CKEDITOR.dialogCommand("插件名称"));
a.ui.addButton("插件名称", {
label: "插件名称",//调用dialog时显示的名称
command: "插件名称",
icon: this.path + "g.ico"//在toolbar中的图标 });
CKEDITOR.dialog.add("插件名称", this.path + "dialogs/插件名称.js") } }) })();

第四步:/plugins/插件名称/dialogs/插件名称.js 内容如下:

(function() {
CKEDITOR.dialog.add("插件名称",
function(a) {
return {
title: "插件名称",
minWidth: "500px",
minHeight:"500px",
contents: [{
id: "tab1",
label: "",
title: "",
expand: true,
width: "500px",
height: "500px",
padding: 0,
elements: [{
type: "html",
style: "width:500px;height:500px",
html: '内容测试'
}]
}],
onOk: function() {
//点击确定按钮后的操作
//a.insertHtml("编辑器追加内容");
}
}
})
})();

2、放在单个plugin.js中

第一步:config.js中

config.extraPlugins = 'clearempty';//注册插件,extraPlugins只允许出现一次,你如果之前有新增别的插件,那么用逗号分隔

第二步:plugins文件夹下新建:clearempty 文件夹
第三步:在plugins/clearempty/下新建plugin.js;内容如下:

(function() {
CKEDITOR.plugins.add('clearempty', {
requires: ['styles', 'button'],
init: function(a) {
a.addCommand('clearempty', CKEDITOR.plugins.clearempty.commands.clearempty);
a.ui.addButton('clearempty', {
label: "清除空行",
command: 'clearempty',
icon: this.path + "g.ico"//这个g.ico是你的插件图标,放在同目录下
});
}
});
CKEDITOR.plugins.clearempty = {
commands: {
clearempty: {
exec: function(a) {
var _html = a.getData();
//在这里执行你将_html中的空行替换掉的操作
a.setData(_html);
}
}
}
};
})();

以上内容来自:http://blog.csdn.net/qbg19881206/article/details/14224785

 

CKeditor插件开发流程(一)的更多相关文章

  1. CKeditor插件开发流程(二)SyntaxHighlighter

    CKEditor整合SyntaxHighlighter实现代码高亮显示 1,版本说明 CKEditor:ckeditor_4.0.1_standard.zipSyntaxHighlighter:syn ...

  2. CKEditor插件开发

    以前做过一个教育项目,是有关在线考试的.其中对编辑器CKEditor做了扩充,增加了插入客观题.主观题.选择题和判断题的功能.这里记述下CKEditor插件开发的过程. CKEditor以前叫FCKE ...

  3. wordpress插件开发流程梳理

    1.声明一个插件 首先我们必须明白,wordpress的插件可以是单文件,也可以是多文件,css/html都不是必须的,以下举例暂且在单文件模式下 比如我们要创建一个名为 hellophp的插件,那我 ...

  4. jira的插件开发流程实践

    怎么开头呢,由于自己比较懒,博客一直不怎么弄,以后克己一点,多传点自己遇到的问题和经历上来,供自己以后记忆,也供需要的小伙伴少走点弯路吧 最近公司项目需要竞标一个运维项目,甲方给予了既定的几种比较常用 ...

  5. PhoneGap插件开发流程

    前几天写了一个PhoneGap插件,这个插件的功能很简单,就是开启viewport设置.不过与其它插件相比,有好几个有意思的地方,仔细读了PhoneGap的源码才搞定.这里记录一下PhoneGap插件 ...

  6. CkEditor 插件开发

    CKEditor的插件开发其实很简单只需要两步.1.通过CKEditor.plugins.add()方法编写插件的逻辑主体, 2.告诉CKEditor我们有一个自定义插件需要添加进来. //创建插件逻 ...

  7. 老司机带你解读jQuery插件开发流程

    jquery插件开发模式 jquery插件一般有三种开发方式: 通过$.extend()来扩展jQuery 通过$.fn 向jQuery添加新的方法 通过$.widget()应用jQuery UI的部 ...

  8. wordpress插件开发流程梳理-二

    开发插件的最佳实践 避免命名冲突 当您的插件对变量,函数或类使用相同的名称作为另一个插件时,会发生命名冲突. 幸运的是,您可以使用以下方法避免命名冲突. 程序性 默认情况下,所有变量,函数和类都在全局 ...

  9. cordova自定义插件开发流程

    cordova自定义插件开发:1.cordova安装:npm install -g cordova2.plugman安装:npm install -g plugman3.cordova创建工程:cor ...

随机推荐

  1. ios 使用gcd 显示倒计时

    __block ;//倒计时时间 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, ...

  2. Android事件的分发

    1 http://blog.csdn.net/guolin_blog/article/details/9097463 2

  3. sublime livereload插件

    1.首先在chrome商店下载livereload 安装之后记得在 chrome 的 扩展程序 里面 勾上 允许访问文件地址 2.sublime text 3 中下载插件 Livereload 3.配 ...

  4. keil 中的一些设置

    option for target 'target 1' 中: 第3选项output: select folder for objects :此选项是选择编译时产生的以希望文件,点击选择路径,不然这些 ...

  5. 启动avd Android模拟器缓慢 HAXM自动安装失败

    问题1.更新Android sdk镜像,腾讯镜像地址 android-mirror.bugly.qq.com 使用方法如图 问题2.自动更新HAXM失败解决方法 手动下载地址 http://softw ...

  6. iOS中三种方式实现登录界面播放视频或gif效果

    现在app都做的越来越炫酷,各种动画效果,各种特效很好的提高了用户的体验.很多app在登录界面都使用了动画效果,比如Uber,Keep,QQ等等.这些动画效果基本都是使用gif或者MP4来实现的. 效 ...

  7. mv 命令 简要

    1.mv  test.txt    test1.txt 给文件重命名 2.mv   test.txt   aaDir   将test.txt文件移动到aaDir文件夹中 3.mv   -t  /hom ...

  8. DataUml Design 教程1-初识

        DataUml Design 是面向开发人员使用的一个永久免费的软件,提高软件的开发效率和代码的规范度.它主要包括三大功能,数据模型.代码生成和UML建模,数据模型功能类似于PowerDesi ...

  9. dede 文章列表页如何倒序排列

    {dede:arclist row='6' typeid='18' orderway='asc'} <li>;<a href="[field:arcurl/]"& ...

  10. ORA-24408: could not generate unique server group name

    一台新虚拟机,CentOS 6.5系统,用lnmp一键安装包安装好Nginx + PHP环境,再安装Oracle客户端,准备搭建PHP连接Oracle,访问oracle.php,测试连接Oracle的 ...