如何禁止 CKEditor 添加 "cke:" 到对象标签的开头?
How do I disable CKEditor from adding "cke:" to the beginning of object tags?
我正在尝试为 CKEditor 创建一个简单的插件,将一段代码粘贴到编辑器中。我试过向内容过滤器添加例外,甚至使用 config.allowedContent = true;
完全禁用内容过滤器
在我的 config.js
文件中。
当 <object></object>
标签首次粘贴到编辑器中时,它工作正常,但是当用户切换到 "source" 模式并返回 WYSIWYG 模式时,我发现 <object>
标签现在变成了 <cke:object></cke:object>
标签,这导致它从所见即所得模式中消失。
如何禁用此功能?
我承认我不完全理解源代码,但我四处寻找,罪魁祸首似乎是文件:
/ckeditor/core/filter.js
第 1463 行和第 1533 行之间
还有:
/ckeditor/core/htmldataprocessor.js
从第 788 行开始。
注意:我使用的是 CKEditor 4.5.6
它们都包含对 cke:
的引用和对 append/remove 的正则表达式 cke:
前缀。
几个月前,我曾尝试在此处查看 Stack Overflow、文档,甚至 submitted a ticket,但未能找到答案。
这是因为您没有处理此 <object>
标记的功能。例如,如果您启用 Flash 插件并插入一个 Flash 对象,它将被转换为一个占位符(检查 this code)。由于安全原因,可编辑区域内不能有<object>
标签,需要通过插件处理,转化为placeholder或widget。
我正在尝试为 CKEditor 创建一个简单的插件,将一段代码粘贴到编辑器中。我试过向内容过滤器添加例外,甚至使用 config.allowedContent = true;
完全禁用内容过滤器
在我的 config.js
文件中。
当 <object></object>
标签首次粘贴到编辑器中时,它工作正常,但是当用户切换到 "source" 模式并返回 WYSIWYG 模式时,我发现 <object>
标签现在变成了 <cke:object></cke:object>
标签,这导致它从所见即所得模式中消失。
如何禁用此功能?
我承认我不完全理解源代码,但我四处寻找,罪魁祸首似乎是文件:
/ckeditor/core/filter.js
第 1463 行和第 1533 行之间
还有:
/ckeditor/core/htmldataprocessor.js
从第 788 行开始。
注意:我使用的是 CKEditor 4.5.6
它们都包含对 cke:
的引用和对 append/remove 的正则表达式 cke:
前缀。
几个月前,我曾尝试在此处查看 Stack Overflow、文档,甚至 submitted a ticket,但未能找到答案。
这是因为您没有处理此 <object>
标记的功能。例如,如果您启用 Flash 插件并插入一个 Flash 对象,它将被转换为一个占位符(检查 this code)。由于安全原因,可编辑区域内不能有<object>
标签,需要通过插件处理,转化为placeholder或widget。