如何才能允许用户在不在编辑器中创建新元素的情况下按Enter键?

时间:2015-07-24 作者:dcp3450

我写了一个tinymce 按钮在我的编辑器上放置一个特殊的div(我没有使用格式下拉列表,因为客户端不确定)。当用户在div内按enter键时,它会创建该div的另一个实例。我希望它在该div内创建一个段落。

我现在正在使用一个类似的插件,为没有这个问题的列创建div。我已经查看了他们的代码,但没有看到任何明显的差异。

我的js:

tinymce.create(\'tinymce.plugins.containerBlock\', {
    init : function(ed, url) {
        ed.addButton(\'containerBlock\', {
            title : \'Add Container Block\',
            image : url+\'/containerBlock.png\',
            onclick : function() {
                 ed.selection.setContent(\'<div class="container">Add Full Width Content or Content Block</div>&nbsp;\');

            }
        });
    },
    createControl : function(n, cm) {
        return null;
    },
});
tinymce.PluginManager.add(\'containerBlock\', tinymce.plugins.containerBlock);
我的php:

function structure_buttons(){

    if ( current_user_can(\'edit_posts\') &&  current_user_can(\'edit_pages\') )
    {
        //Called when tiny MCE loads plugins - \'add_custom\' is defined below.
        add_filter(\'mce_external_plugins\', \'add_custom_structure\');
        //Called when buttons are loading. -\'register_button\' is defined below.
        add_filter(\'mce_buttons\', \'register_structure_buttons\');
    }

}
add_action(\'init\',\'structure_buttons\');

function register_structure_buttons($buttons) {
   array_push($buttons, \'containerBlock\');
   array_push($buttons, \'contentBlock\');
   return $buttons;
}

function add_custom_structure($plugin_array) {
   $plugin_array[\'containerBlock\'] = get_bloginfo(\'template_url\').\'/js/custombutton.js\';
   $plugin_array[\'contentBlock\'] = get_bloginfo(\'template_url\').\'/js/custombutton.js\';
   return $plugin_array;
}

1 个回复
最合适的回答,由SO网友:dcp3450 整理而成

Turns out you have to have a <p> tag in the div to prevent that.

结束

相关推荐

WordPress tinyMCE在保存时保持将<p>标记包装为HTML代码

Wordpress tinyMCE继续添加<p> 在视觉模式下保存自定义帖子类型时打开的标签!我一直在寻找许多解决方案,但都没有成功。这是我找到的解决方案,但这无法阻止wordpress添加恼人的内容<p> html代码中的标记:Javascript:<script type=\"text/javascript\"> tinyMCE.init({force_p_newlines : false}); </script> PH