Ckeditor 5 如何以编程方式触发复制、剪切、粘贴事件



我已经实现了右键菜单来ckeditor。我插入了Copy, Cut, Paste菜单项。我想触发 ckeditor dom 事件,并期望被 ckeditor 侦听器捕获的事件。但我不知道该怎么做。

我试图跑editor.editing.view.document.fire('cut').之后,在Clipboard.jsonCopyCut方法被触发。但是data参数undefined.如何发送数据参数,我应该在数据参数中发送什么?

您无法通过自定义按钮进行粘贴。基本上,可以通过本机document.execCommand()方法访问本机复制/剪切/粘贴操作:

document.execCommand( 'copy' );
document.execCommand( 'cut' );
document.execCommand( 'paste' );

但是,只有复制和剪切操作才有效。出于安全原因,浏览器阻止了粘贴。

因此,粘贴操作只能由击键或本机"粘贴"选项(在上下文菜单或菜单栏中)触发。您今天无法通过自定义上下文菜单访问剪贴板(将来可能会更改)。这就是为什么 CKEditor 5 不会覆盖本机上下文菜单(不像 CKEditor 4 或其他一些编辑器)。

附言。在Google Docs中,自定义"粘贴"按钮有效(在Chrome中),因为Chrome预装了Google Docs插件。这是谷歌解决上述问题的伎俩......

最新更新