防止CKEditor在内部和交叉编辑器粘贴操作上应用pasteFilter

防止CKEditor在内部和交叉编辑器粘贴操作上应用pasteFilter,ckeditor,Ckeditor,我们正在使用CKEditor 4.5.11。我们的配置如下所示: config.allowedContent = { $1: { // Use the ability to specify elements as an object. elements: CKEDITOR.dtd, attributes: true, styles: true, classes: true } };

我们正在使用CKEditor 4.5.11。我们的配置如下所示:

config.allowedContent = {
     $1: {
         // Use the ability to specify elements as an object.
         elements: CKEDITOR.dtd,
         attributes: true,
         styles: true,
         classes: true
     }
 };
 config.pasteFilter = 'semantic-content';
文件规定如下:

<p><span style="color:#ff0000">one two three</span></p>
<p><font color="#ff0000">one two three</font></p>
请注意,粘贴过滤器仅应用于外部数据。有三个数据来源:

  • 在同一编辑器中复制和粘贴(内部)

  • 从一个编辑器复制并粘贴到另一个编辑器(交叉编辑器)

  • 来自所有其他来源,如网站、微软Word等(外部)

文档似乎准确地描述了我们想要的行为。事实上,在Chrome中,事情就是这样。然而,在Internet Explorer和Firefox中,我们注意到粘贴过滤器也应用于内部和跨编辑器粘贴操作(这是我们不想要的,而且似乎与文档相矛盾)

注意:内部和交叉编辑器拖放操作似乎正在按照文档所述工作。我们只是在粘贴操作上有问题

我们的配置中是否存在妨碍其正常工作的因素?还是我们误解了文件?或者这可能是一个bug


更新:当我们使用Internet Explorer深入研究这个问题时,我们注意到一些基于标记的差异。例如,考虑以下内容:

<p><span style="color:#ff0000">one two three</span></p>
<p><font color="#ff0000">one two three</font></p>
一二三

一二三

在跨度情况下,选择整个跨度时,内部复制/粘贴操作会丢失样式。但是,如果仅复制和粘贴“两三”,则粘贴内容时(在同一编辑器中)样式不会丢失

在第二种情况下,复制和粘贴(在同一编辑器中)时不会丢失格式。与第一种情况不同,我们是否复制/粘贴整个段落似乎并不重要