我正在一个项目中,用户应该能够在嵌入式ckEditor中插入短文本和音频播放器并保存。添加音频效果很好,但是在删除<br>
之前,<audio>
会保存或刷新页面。在两个元素之间添加任何文本可防止删除<br>
。
到目前为止,我发现,当ckEditor调用<br>
时,htmlDataProcessor.toHtml
被editor.setData
删除了。
我想知道的是为什么编辑器删除了<br>
以及如何避免这种情况。
下面,我添加了一个片段,该片段的行为与项目中的编辑器相同。
CKEDITOR.inline('editor1', {
enterMode: CKEDITOR.ENTER_BR,
allowedContent: true
});
div {
border-style: solid;
min-height: 100px;
padding: 5px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/ckeditor/4.11.2/ckeditor.js"></script>
<script>
CKEDITOR.disableAutoInline = true;
</script>
<div contenteditable="true" id="editor1">Text <br> <audio controls></div>
谢谢!
答案 0 :(得分:0)
添加extraAllowedContent:'audio;*(*);*{*}'
,它将允许您在编辑器中插入音频标签。
CKEDITOR.disableAutoInline = true;
CKEDITOR.inline('editor1', {
enterMode: CKEDITOR.ENTER_BR,
allowedContent: true,
extraAllowedContent:'audio;*(*);*{*}'
});
div {
border-style: solid;
min-height: 100px;
padding: 5px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/ckeditor/4.11.2/ckeditor.js"></script>
<div contenteditable="true" id="editor1">Text <br> <audio controls></div>