在TinyMCE 4中,我添加了一个自定义编辑器按钮,以获取选择的当前内容并将其包装在[shortcode][/shortcode]
中。很简单。
onclick: function() {
var selection = editor.selection.getContent({ 'format' : 'text' });
editor.insertContent('[shortcode]'+selection+'[/shortcode]');
}
但是,如果所选内容位于<blockquote>
中,则[shortcode]
不会包装标记。
此外,如果内容恰好是
<blockquote>
<p style="text-align: center;">
Content
</p>
</blockquote>
[shortcode]
将完全包含&#39;内容&#39;没有任何标签。
// What happens
<blockquote>
<p style="text-align: center;">
[shortcode]Content[/shortcode]
</p>
</blockquote>
我正在寻找的是一种包装整个块级内容的方法。类似于TinyMCE的块级格式样式。
// What should happen
[shortcode]
<blockquote>
<p style="text-align: center;">
Content
</p>
</blockquote>
[/shortcode]
即使只放置光标,也希望包装整个内容块,但只能使用整个文本选择。
我已尝试将'format': 'html'
用于.getContent
,并使用.getNode
方法,但没有令人满意的结果。