CKEditor自定义插件按钮

CKEditor自定义插件按钮,ckeditor,Ckeditor,我已经为CKEditor编写了一个自定义插件——在所有方面都很成功,目前只保存了一个:为了我的生命,我无法想出如何自定义编辑器工具栏按钮上的图像。由于我是一个新用户,您将不得不通过点击查看附加的图像;左上角突出显示的方块应该有一个漂亮的图片(像大多数其他工具栏项目一样) 其他人的一些信息尝试为CKEditor 3.0编写插件 我从复制plugins/flash的源代码开始,现在有了一个带有youtube徽标的按钮。。。。这是plugins/youtube/plugin.js的摘录 editor.

我已经为CKEditor编写了一个自定义插件——在所有方面都很成功,目前只保存了一个:为了我的生命,我无法想出如何自定义编辑器工具栏按钮上的图像。由于我是一个新用户,您将不得不通过点击查看附加的图像;左上角突出显示的方块应该有一个漂亮的图片(像大多数其他工具栏项目一样)


其他人的一些信息尝试为CKEditor 3.0编写插件

我从复制plugins/flash的源代码开始,现在有了一个带有youtube徽标的按钮。。。。这是plugins/youtube/plugin.js的摘录

editor.ui.addButton( 'YouTube',
            {
                label : editor.lang.common.youtube,
                command : 'youtube',
                icon: this.path + 'images/youtube.gif'
            });
您还需要编辑您的语言文件。。。。e、 g.lang/en.js

将您的插件名称添加到“公共”部分(当您将鼠标悬停在按钮上时,它会显示为工具提示),并为您的插件添加一个完整的块,包括所有字符串,如下所示

// YouTube Dialog
youtube :
{
    properties      : 'YouTube Properties',
    propertiesTab   : 'Properties',
    title       : 'YouTube Properties',
    chkPlay     : 'Auto Play',
    chkLoop     : 'Loop',
    chkMenu     : 'Enable YouTube Menu',
    chkFull     : 'Allow Fullscreen',
    scale       : 'Scale',
    scaleAll        : 'Show all',
    scaleNoBorder   : 'No Border',
    scaleFit        : 'Exact Fit',
    access          : 'Script Access',
    accessAlways    : 'Always',
    accessSameDomain    : 'Same domain',
    accessNever : 'Never',
    align       : 'Align',
    alignLeft   : 'Left',
    alignAbsBottom: 'Abs Bottom',
    alignAbsMiddle: 'Abs Middle',
    alignBaseline   : 'Baseline',
    alignBottom : 'Bottom',
    alignMiddle : 'Middle',
    alignRight  : 'Right',
    alignTextTop    : 'Text Top',
    alignTop    : 'Top',
    quality     : 'Quality',
    qualityBest      : 'Best',
    qualityHigh      : 'High',
    qualityAutoHigh  : 'Auto High',
    qualityMedium    : 'Medium',
    qualityAutoLow   : 'Auto Low',
    qualityLow       : 'Low',
    windowModeWindow     : 'Window',
    windowModeOpaque     : 'Opaque',
    windowModeTransparent    : 'Transparent',
    windowMode  : 'Window mode',
    flashvars   : 'Variables for YouTube',
    bgcolor : 'Background color',
    width   : 'Width',
    height  : 'Height',
    hSpace  : 'HSpace',
    vSpace  : 'VSpace',
    validateSrc : 'URL must not be empty.',
    validateWidth : 'Width must be a number.',
    validateHeight : 'Height must be a number.',
    validateHSpace : 'HSpace must be a number.',
    validateVSpace : 'VSpace must be a number.'
}

以下是一些适用于CKEditor 3.x的插件

CKEditor插件

Highslide JS插件, LrcShow插件, 文件图标插件, 插入TML插件, SyntaxHighlighter插件


下载:

我写了一篇完整的文章,涵盖了CKeditor插件开发的各个方面,包括按钮、上下文菜单、对话框等等

答案是设置按钮设置的图标属性,如下所示:

        editor.ui.addButton('your-plugin', {
            label: 'Your Plugin Label',
            command: 'YourPlugin',
            icon: this.path + 'images/your-plugin.jpg'
        });
你的插件目录应该有一个“images”子目录,你的按钮应该在那里。在上面的代码片段中,用按钮的jpg、GIF或PNG图像替换“your plugin.jpg”


当然,这个答案假设您知道如何使用Gimp、Photoshop等图像编辑器创建按钮图像。

在CKEditor文档网站上有一个非常详尽的教程,请参阅:

目前包括:

  • 创建编辑器命令
  • 创建带有图标的工具栏按钮
  • 关于如何在CKEditor中注册插件的说明
  • 创建带有两个选项卡的插件对话框窗口
  • 添加上下文菜单
  • 高级内容筛选器(ACF)集成(在a上)

如果您对创建自己的小部件感兴趣,请同时选中

以添加您需要编辑皮肤/moono/*.css的自定义图标 对于编辑器本身,您需要在以下文件中添加相同的CSS类

  • editor.css
  • 编辑器_gecko.css(firefox)
  • 编辑器_ie.css
  • 编辑器_ie7.css
  • 编辑器_ie8.css
  • 编辑器_iequirks.css
CSS按钮类的格式名称为.cke\u button\uuuu myCustomIcon\u icon

您可以为图标使用自己的图像文件,也可以编辑sprite/skins/moono/icons.png来添加您的图标

在plugin.js中,您需要

editor.ui.addButton('myplugin',
{
    label: 'myplugin',
    command: FCKCommand_myplugin,
    icon: 'myCustomIcon'
});

关于字体,我使用CSS实现了这一点:

span.cke\u按钮\u图标.cke\u按钮\u粗体\u图标{
职位:相对!重要;
背景图像:无!重要;
&:之后{
字体系列:Fontsome;
位置:绝对位置;
字体大小:16px;
内容:“\f032”;
}
}

插件创建过程似乎已经简化。这里的好教程:链接似乎已断开。该链接不再工作,请更新在wayback机器上找到的链接。该教程过去和现在都不正确。它在主插件中设置了“icons”属性,而没有设置“icon”“编辑器.ui.addButton()调用中的属性。后者是使其发挥作用所需要的。(参见希尔克斯特的回答)我遵循了教程,提出了与原始海报相同的问题。很高兴它终于开始工作了——不,多亏了教程!奇怪的是,addButton()的文档中也缺少“icon”属性。。。这是正确的答案。我在ckeditor的网站上学习了教程,该网站省略了图标属性,并且一直在为如何显示图标而苦苦挣扎。很高兴他们终于开始工作了,多亏了这一点!