是否可以为多实例tinyMCE的每个实例定义一个forced_root_block?

Is it possible to define a forced_root_block for each instance of a multi-instance tinyMCE?

我目前正在寻找一种方法来在单个页面上设置每个 tinymce 实例以使用不同的 forced_root_block 元素。 例如:我在页面上呈现 3 个实例。第一个应该是 h1 第二个是 h2 第三个是 p.

正如我在 tinymce 文档中发现的那样,我可以在 tinymce 的 init() 时使用 forced_root_block。但是如果我按如下方式初始化,我会得到 h1 作为所有实例的根标签。

有没有办法为每个单独的实例定义这个参数?例如在 setup-callback?

感谢您的帮助。

tinyMCE.init({
    //...
    mode: 'textareas',
    editor_selector: 'article_editor',
    content_css: '/editorcss/',
    forced_root_block: 'h1',
    //...
});

我找到了适合我的解决方案。 可以将回调函数注册到设置参数。对于 tinymce 的每个实例,这称为一次性。 在此回调中,可以覆盖 editor.settings。所以我只是从我的元素中读取块属性并在设置中覆盖这些信息。

tinyMCE.init({
    //...
    mode: 'textareas',
    editor_selector: 'article_editor',
    setup: function(ed) {
        /**
        * We are looking for textareas != basetext and setup their block-tag and attributes
        **/
        var block_type  = $('#' + ed.id).data('block-type');
        var block_class = $('#' + ed.id).data('block-class');
        var block_style = $('#' + ed.id).data('block-style');

        if (block_type != null) {
            ed.settings.forced_root_block = block_type;
            ed.settings.forced_root_block_attrs = {
                'class': block_class ? block_class : '',
                'style': block_style ? block_style : ''
            }
        }
   //...