javascript CKEditor -禁用图像拖放

cigdeys3  于 2023-01-29  发布在  Java
关注(0)|答案(3)|浏览(208)

问题:将Firefox中的图像拖放到CKEditor窗口时,图像会自动以base64编码。
现在我想禁用此功能。我尝试使用:

config.removePlugins = 'dragdrop';

但它根本不工作。也尝试了一个旧的插件(imagepaste),但也不工作...
有没有已知的解决方案?Thx!

c3frrgcw

c3frrgcw1#

一开始我试着用config.removePlugins = 'dragdrop,basket';禁用Base64,但根本不起作用。
然后我找到了this link,,它帮助我解决了这个问题,wrote a plugin完成了这项工作。
要使用它,您必须在./plugins中创建一个名为dropoff的文件夹,然后创建一个名为plugin.js的文件,其内容如下:

CKEDITOR.plugins.add('dropoff', {
     init: function (editor) {

          function rejectDrop(event) {
              event.data.preventDefault(true);
          };

          editor.on('contentDom', function() {
            editor.document.on('drop',rejectDrop);
          });

      }
});

之后,您必须在CKEditor的config.js上注册它。

config.extraPlugins = 'dropoff';

如果你已经在使用一个额外的插件,就在它们之间放一个,,如下所示:

config.extraPlugins = 'mypreviousplugin,dropoff';

快乐!\o/

w6lpcovy

w6lpcovy2#

在这里我找到了在ckeditor中禁用拖放的解决方案

ed.on('instanceReady', (ev) =>{
      CKEDITOR.plugins.clipboard.preventDefaultDropOnElement(ev.editor.document);
});
li9yvcax

li9yvcax3#

我使用的是一个包含Base64UploadAdapter插件的ckeditor5自定义版本。因此,为了在某些特定视图中禁用此插件,我只是在编辑器配置中添加了“removePlugins”指令。然后,拖放图像就被禁用了。

configEditor = {
    removePlugins: [ 'Base64UploadAdapter' ],
    toolbar: ['heading', '|', 'bold', 'bulletedList', 'numberedList'],
  };

相关问题