【问题标题】:How to disable / enable button when in CKEditor when source function is on?当源功能打开时,如何在 CKEditor 中禁用/启用按钮?
【发布时间】:2018-03-20 15:34:58
【问题描述】:

在CKEditor中使用source函数时,一些按钮(通常与样式相关的)被禁用,而某些按钮仍然可用(通常与样式无关)以下是official demo的截图,显示了禁用的内容什么不是。

我在official guide 之后编写了一些自定义插件,并带有我自己的一些改动。其中一些,例如在官方指南中添加缩写,即使在源代码模式下也应该启用,而其他一些与样式相关的应该禁用。问题是,我应该在哪里设置这样的行为?

【问题讨论】:

    标签: javascript ckeditor wysiwyg


    【解决方案1】:

    使用modes 属性。

    editor.addCommand('foo', new CKEDITOR.dialogCommand('fooDialog'));
    editor.commands.foo.modes = { wysiwyg: 1, source: 1 };
    

    editor.addCommand('foo', {
        modes: { wysiwyg: 1, source: 1 },
        //...
    });
    

    更多信息:

    https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_command.html#property-modes https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_commandDefinition.html#property-modes

    【讨论】:

    • 虽然这可以启用/禁用命令,但是在设置source:0时按钮本身并没有变成灰色.....你知道如何设置吗?或者如果这需要大量测试,我应该问一个新问题吗?已上传。在标记为正确答案之前等待您的回复。
    • 设置source: 0时,该按钮在Source模式下自动禁用,因为它链接到命令。当source: 1 时发生相反的情况。也许您需要清除浏览器缓存以重新加载插件。否则,请显示您的插件的一些示例代码(addCommandmodesaddButton 代码)。
    • 我的意思是,按钮被正确禁用(至少,不是点击操作),但按钮没有变成灰色......
    • 等等,按钮还是可以点击的?你清除浏览器缓存了吗?
    • 不,按钮不可点击,但按钮保持原来的颜色。 (虽然悬停边框消失了)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-04
    • 2011-09-15
    • 1970-01-01
    • 1970-01-01
    • 2018-07-30
    • 2017-11-07
    • 1970-01-01
    相关资源
    最近更新 更多