在TinyMCE中插入换行符而不是<p> </p>

时间:2010-08-24 07:34:21

标签: tinymce

我已按如下方式初始化TinyMCE。我想在用户按下输入而不是段落时强制换行。我正在尝试跟随,但没有工作。我正在使用TinyMCE版本3_3_8。

tinyMCE.init({
        mode: "exact",
        theme: "advanced",
        elements: "textAreaId",
        cleanup: false,
        theme_advanced_toolbar_location: "",
        theme_advanced_buttons1: "",
        theme_advanced_buttons2: "",
        theme_advanced_buttons3: "",
        height: 200,
        width: 300,
    forced_root_block : false,
    force_br_newlines : true,
    force_p_newlines : false,
        oninit: InitPosition
    }); //init ends

我尝试定义forced_root_block : "",但它仍无效。

我做错了什么?

8 个答案:

答案 0 :(得分:19)

只需添加forced_root_block : false

即可

或者如果你想要一个包装器:forced_root_block : 'div'

像魅力一样!

答案 1 :(得分:14)

而是尝试:

force_p_newlines : false,
force_br_newlines : true,
convert_newlines_to_brs : false,
remove_linebreaks : true,    

答案 2 :(得分:9)

对我有用的是:

tinymce.init({
    ...
    force_br_newlines : true,
    force_p_newlines : false,
    forced_root_block : ''
});

每个换行符都使用这些设置生成br标记。

消息来源:http://www.tinymce.com/wiki.php/Configuration3x:force_br_newlines

答案 3 :(得分:7)

我遇到了与TinyMCE 4相同的情况。我所有的&#34;输入&#34; (键盘)导致注入新的<p>&nbsp</p>

我不想使用forced_root_block : false所以我在tinymce.init函数中找到了一些东西(每个空段将直接清除):

setup : function(editor) {

            editor.on('PostProcess', function(ed) {
                // we are cleaning empty paragraphs
                ed.content = ed.content.replace(/(<p>&nbsp;<\/p>)/gi,'<br />');
            });

        }

https://www.tinymce.com/docs/configure/integration-and-setup/#setup https://www.tinymce.com/docs/api/class/tinymce.editor/#postprocess

答案 4 :(得分:3)

“forced_root_block:false”选项适用于TinyMCE 4.0。

答案 5 :(得分:2)

在主题functions.php中插入以下代码:

    add_filter( 'tiny_mce_before_init', 'my_switch_tinymce_p_br' ); 

    function my_switch_tinymce_p_br( $settings ) {
        $settings['forced_root_block'] = 'br';
        return $settings;
    }

答案 6 :(得分:1)

TinyMCE在Mozilla Firefox上添加了<div><br><p>

我找到了解决方法:

打开Mozilla Firefox,然后输入以下地址: about:config

搜索选项并设置为false: editor.use_div_for_default_newlines

答案 7 :(得分:0)

在tinyMCE 5中,我需要添加1个额外的参数

tinymce.init({
    ...
    valid_elements: 'br',
    force_br_newlines : true,
    force_p_newlines : false,
    forced_root_block : ''
});
相关问题