创建一个简单的CKEditor插件-选择下拉列表
Creating a Simple CKEditor Plugin - Select dropdown
我正在CKeditor中做一个插件,并选择['Description','Value']。
ckeditor root/
plugins/
span/
icons/
span.png
dialogs/
span.js
plugin.js
plugin.js
> CKEDITOR.plugins.add( 'span', {
> icons: 'span',
> init: function( editor ) {
> editor.addCommand( 'span', new CKEDITOR.dialogCommand( 'spanDialog' ) );
> editor.ui.addButton( 'Span', {
> label: 'Insert Reserved Word',
> command: 'span',
> toolbar: 'insert'
> });
> CKEDITOR.dialog.add( 'spanDialog', this.path + 'dialogs/span.js' );
> } });
对话框/span.js
CKEDITOR.dialog.add( 'spanDialog', function( editor ) {
return {
title: 'Palavras Reservadas',
minWidth: 400,
minHeight: 200,
contents: [
{
id: 'tab-basic',
label: 'Basic Settings',
elements: [
{
type: 'select',
id: 'span',
label: 'Reserved Words Available',
items: [ [ 'example 1', '#exanple1#' ], [ 'example 2', '#example2#' ] ],
validate: CKEDITOR.dialog.validate.notEmpty( "Field can not be empty." ),
setup: function(a) {
this.setValue(a.getAttribute("value") || "")
}
}
]
}
],
onOk: function() {
var dialog = this;
var span = editor.document.createElement( 'span' );
span.setAttribute( 'title', dialog.getValueOf( 'tab-basic', 'title' ) );
editor.insertElement( span );
}
};
});
在函数onOK()
onOk: function() {
var dialog = this;
var span = editor.document.createElement( 'span' );
span.setAttribute( 'title', dialog.getValueOf( 'tab-basic', 'title' ) );
editor.insertElement( span );
}
我想向读者添加以下
<span>#example1#</span> //if I select a Exemple 1
有什么技巧吗?用文本集查看此跨度。。。感谢您
Resolved;)
span.js
setup: function( element ) {
element.setText( this.getValue() );
},
commit: function( element ) {
element.setText( this.getValue() );
}
.... var selection = editor.getSelection();
var element = selection.getStartElement();
if ( element )
element = element.getAscendant( 'span', true );
if ( !element || element.getName() != 'span' ) {
element = editor.document.createElement( 'span' );
this.insertMode = true;
}
else
this.insertMode = false;
this.element = element;
if ( !this.insertMode )
this.setupContent( this.element );
},
onOk: function() {
var dialog = this;
var abbr = this.element;
this.commitContent( abbr );
if ( this.insertMode )
editor.insertElement( abbr );
}
相关文章:
- CKEditor v4:自制插件中对话框的动态标题
- CKeditor预览插件.js,为Chrome和IE进行编辑.因为它拒绝CSS样式
- 删除CKEditor'中的htmlPreview;s图像插件
- 在部署ckeditor时,我需要包括插件文件夹吗
- Ckeditor插件功能在使用setData(“hai”)之后不起作用;
- 如何在CkEditor的替换功能中禁用插件
- 创建一个简单的CKEditor插件-选择下拉列表
- 有没有一种方法可以在运行中添加CKEditor的按钮到链接插件
- CKeditor自己的带有对话框的插件
- ckEditor插件iframe对话框设置html输入
- 在 CKEditor 中加载块引用插件
- Ckeditor 自定义插件 - 带有单选按钮的对话框
- 将代码片段插件添加到 Rails 应用程序中的 CKEditor
- CKEditor 插件 - 当前文本区域的 ID
- CKEditor插件不在插件文件夹中
- 如何防止 Ckeditor 的视频检测器插件在页面上有多个实例时复制内容
- 如何添加 ckEditor 表插件
- CKeditor自动增长插件在引导选项卡内
- CKEditor代码片段插件在yii2框架中不做语法高亮
- 是否有任何回调函数上传图像插件CKEditor