我有一个类似于标签模块的CKEditor小部件。
作为可编辑的内容,我定义了<ul class="list1">
<li><a href="#">List item 1</a></li>
<li><a href="#">List item 2</a></li>
<li class="slicknav_parent"><a href="#">List item 3</a>
<ul>
<li><a href="#">Child Item 1</a></li>
<li><a href="#">Child Item 2</a></li>
<li><a href="#">Child Item 3</a></li>
<li><a href="#">Child Item 4</a></li>
</ul>
</li>
<li><a href="#">List item 4</a></li>
</ul>
和span.title
。
当我在div.content
内处于编辑模式然后使用CTRL + V粘贴某些内容时,跨度会被破坏,我有两个跨度。就像它粘贴在我粘贴的任何位置一样。
当我在span.title
内处于编辑模式,然后使用CTRL + V粘贴某些内容时,剪贴板的内容会正确插入到该div中。
是因为span是内联元素而div是块元素而CKEditor不允许粘贴到内联元素中吗? 我可以以某种方式改变这种行为吗?
答案 0 :(得分:1)
CKEditor允许粘贴块和内联元素(请记住,content filtering (ACF)可以使用,这也会影响粘贴)所以在这种情况下可能不是问题。
我还要确保您尝试粘贴的内容不包含任何可能导致您描述的行为的HTML。
如果您可以提供正在使用的小部件HTML /模板或代码,我将很乐意更深入地研究此问题。
答案 1 :(得分:0)
尝试将<cite>
元素作为可编辑元素时遇到了这个问题。技巧是调整CKEDITOR.dtd
属性。
// This prevents the pasting from splitting parent element.
delete CKEDITOR.dtd.$removeEmpty.cite;
// This tells the editor to allow editing in this element.
CKEDITOR.dtd.$editable.cite = 1;
我想这会影响当前加载的任何编辑器中所有<cite>
元素的行为。对于大多数元素而言,并非在所有情况下都不理想,但是对于我们对blockquote / pullquote小部件的要求而言,<cite>
元素仅允许在任何编辑器的<blockquote>
元素内使用。