我在CKEditor中编写了一个自定义插件,它实际上在编辑器中的选定文本上插入了一个范围。下面是我用来实现相同的代码片段。
HTML:
<p><span class="highlight"> This is a simple text with some words </span><p>
&#13;
插件代码
var style = new CKEDITOR.style( { element: 'span', attributes: { 'class': 'reader' } } );
editor.applyStyle( style );
&#13;
输出
<p><span class="highlight"> This is a <span class="reader">simple text</span> with some words </span></p>
&#13;
然而,这引入了跨度嵌套。我想避免嵌套这些跨度。相反,输出就像我期望的那样。
预期输出
<p><span class="highlight"> This is a </span><span class="reader">simple text</span><span class="highlight"> This is a </span> with some words </span></p>
&#13;
Inshort我想避免嵌套标签, 在插入新跨度之前, 1.结束上一个span标记 2.插入新的跨度 3.插入跨度后继续前一个跨度。以这种方式插入样式的好处是我始终能够保留应用于选择的格式标签,如
有没有办法可以实现所需的功能?