2012-01-15 17:32:12|?次阅读|上传:wustguangh【已有?条评论】发表评论
关键词:JavaScript, Web, CKEditor|来源:唯设编程网
editor.ui.addButton函数声明包含了两个参数, 按钮名字和按钮定义. 在按钮定义中可能的属性还包含:
最简单的增加按钮图片的办法是利用属性icon. 代码如下:
CKEDITOR.plugins.add('myplugin', { init: function(editor) { //plugin code goes here editor.ui.addButton('myplugin', { label: 'myplugin', command: FCKCommand_myplugin, icon: CKEDITOR.plugins.getPath('myplugin') + 'myplugin.png' }); } });
CKEditor以命令的方式提供了大部分的功能. 命令和函数之间的不同是 命令是有“ON”, “OFF“和未启用状态的.
editor.addCommand函数声明了两个参数, 命令名字和命令的对象定义. 可能的命令定义的属性包含:
触发命令是很简单的, 通过
editor.execCommand(commandName);
命令有三个状态: ON, OFF和DISABLED. 状态能够通过setState进行设置,例如:
editor.getCommand(commandName).setState(state);
状态值将会是: CKEDITOR.TRISTATE_ON, CKEDITOR.TRISTATE_OFF, CKEDITOR.TRISTATE_DISABLED 中的一个.
当设置为未启用的时候, 按钮将会表现为灰色, 并且通过execCommand执行的命令将无效. 当设置为on的时候, 按钮就会被高亮. 当命令的状态改变的时候, 命令将会触发一个’state’事件.
对话框是一些插件的核心. 为了使用该对话框, 他们必须首先在plugin.js中注册, 包括定义, 通过调用CKEDITOR.dialog.add如下:
CKEDITOR.dialog.add(pluginName, this.path + 'dialogs/pluginName.js');
之后,如果你想通过点击一个按钮触发这个对话框, 你可以通过使用CKEDITOR.dialogCommand来简单的完成这项工作.
editor.addCommand(pluginName, new CKEDITOR.dialogCommand(pluginName));
按约定,有关对话框的代码将会被放到dialogs/.js中. 和按钮和命令类似, 对话框也是通过定义一些属性和方法来定义的. 下面的代码展示了一个标准的.js的模板:
( function(){ var exampleDialog = function(editor){ return { title : /* title in string*/, minWidth : /*number of pixels*/, minHeight : /*number of pixels*/, buttons: /*array of button definitions*/, onOk: /*function*/ , onLoad: /*function*/, onShow: /*function*/, onHide: /*function*/, onCancel: /*function*/, resizable: /* none,width,height or both */, contents: /*content definition, basically the UI of the dialog*/ } } CKEDITOR.dialog.add('insertHTML', function(editor) { return exampleDialog(editor); }); })();
定义里有以下一些属性/方法: