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

问题描述 投票:0回答:10

我已按如下方式初始化TinyMCE。我想在用户按 Enter 键而不是段落时强制换行。我正在尝试关注,但没有成功。我正在使用 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 : ""
,但仍然不起作用。

我做错了什么?

tinymce
10个回答
24
投票

只需添加

forced_root_block : false

或者如果您想要包装纸:

forced_root_block : 'div'

就像魅力一样!


15
投票

请尝试:

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

10
投票

我在使用 TinyMCE 4 时遇到了同样的情况。我所有的“Enter”(键盘)都会导致注入新的

<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


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


4
投票

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


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;
    }

1
投票

TinyMCE 在 Mozilla Firefox 上添加了

<div>
,而不是
<br>
<p>

我找到了解决方案:

打开 Mozilla Firefox 并输入地址:

about:config

搜索选项并转为 false:

editor.use_div_for_default_newlines


1
投票

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

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

1
投票

只需添加

force_br_newlines : true,
force_p_newlines : false,
forced_root_block : false,

tinymce.init 中的任何位置


0
投票

在最新版本中,添加这些参数不起作用:

force_br_newlines : true,
force_p_newlines : false,
forced_root_block : ''

必须添加此参数:

newline_behavior: 'linebreak'

如此处报道: newline_behavior

© www.soinside.com 2019 - 2024. All rights reserved.