目前的行为是什么?

当我最初在加载tinymce并设置一些html标签时执行setContent时,请说一个带有“ mydiv”类的div。通过在该div的tinymce内部进行编辑来插入某些内容时,导致将内容插入到该mydiv内或创建具有相同属性的另一个div并在其中添加内容

重现步骤

SetContent一些html进入编辑器
通过按Enter或在div一行中写一些内容在编辑器中

预期的行为是什么?

它不应导致新输入的文本被包装在div或附近的标签内。由于必须实施电子邮件签名功能,因此我遇到了问题。

https://codepen.io/paramsinghvc/pen/XaVOzz?editors=1010

javascript - 在任何html标记之前/之后写文本也将其包装到html中-LMLPHP

 tinymce.init({
 selector: '#textarea',
 plugins : 'advlist autolink link image lists charmap print preview',
 height: 300,
 init_instance_callback: function(e) {
   e.setContent('<div class="mydiv"><strong>Inital Text</strong></div>')
 }
});

最佳答案

TinyMCE将项目放在根块中,以使内容有效且格式正确。有一个设置可以更改此行为:

https://www.tinymce.com/docs/configure/content-filtering/#forced_root_block

请注意该设置的警告:“请注意,不将p元素用作根块可能会严重削弱编辑器的功能。”

当您使格式错误的HTML变得更容易时,这里可能会发生许多坏事。现在将由您自己承担责任,以确保在您取用此内容并将其组装起来使用时,结果是有效的。

关于javascript - 在任何html标记之前/之后写文本也将其包装到html中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45742301/

10-10 09:06
查看更多