首页 文章

删除TinyMCE 4中的子菜单项

提问于
浏览
1

我正在尝试从WordPress中的TinyMCE下拉工具栏按钮中删除子项 .

该按钮是一个插件按钮(TinyMCE表按钮),它插入一个项目,允许用户在表格上进行CSS样式 .

TinyMCE plugin generated dropdown

(Taulukon ominaisuudet ==表属性)

工具栏按钮是用 . 创建的

editor.addButton("table", {
    type: "menubutton",
    title: "Table",
    menu: menuItems
});

菜单项是使用创建的

editor.addMenuItem('tableprops', {
    text: 'Table properties',
    context: 'table',
    onPostRender: postRender,
    onclick: dialogs.tableProps
});

editor 是TinyMCE插件构造函数参数:

define("tinymce/tableplugin/Plugin", [
    "tinymce/tableplugin/TableGrid",
    ...
    "tinymce/PluginManager"
], function(TableGrid, Quirks, CellSelection, Dialogs, Tools, TreeWalker, Env, PluginManager) {
    var each = Tools.each;

    function Plugin(editor) {
        var clipboardRows, self = this, dialogs = new Dialogs(editor);

        ...

编辑器有一个 addMenuItem 函数,但我找不到与 removeMenuItem 类似的东西 . 我也尝试在编辑器中找到菜单项,以便我可以手动删除它,但系统对于按钮和菜单的位置有点阴暗 .

是否有一种逻辑方法可以删除TinyMCE中的菜单项,还是必须在生成编辑器后直接从DOM中删除它?

1 回答

  • 3

    更新:刚才意识到,您正在使用不同的表插件 . 我想一个简单的方法是检查元素/源并获取该菜单项的元素ID并使用CSS来隐藏它 .

    <style>
    #mceu_38 {display:none !important;}
    </style>
    

    下面是我原来的回复,它用于编辑默认菜单栏


    您可以在init函数中自定义菜单栏:

    tinymce.init({
        selector: "textarea",
        menu : { // this is the complete default configuration
            file   : {title : 'File'  , items : 'newdocument'},
            edit   : {title : 'Edit'  , items : 'undo redo | cut copy paste pastetext | selectall'},
            insert : {title : 'Insert', items : 'link media | template hr'},
            view   : {title : 'View'  , items : 'visualaid'},
            format : {title : 'Format', items : 'bold italic underline strikethrough superscript subscript | formats | removeformat'},
            table  : {title : 'Table' , items : 'inserttable deletetable | cell row column'},
            tools  : {title : 'Tools' , items : 'spellchecker code'}
        },    
        plugins: [
            "advlist autolink lists link image charmap print preview anchor",
            "searchreplace visualblocks code fullscreen",
            "insertdatetime media table contextmenu paste"
        ],
        toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image"
    });
    

    只需删除每个菜单属性中不需要的项目 .

    以下是删除表格属性的示例:http://fiddle.tinymce.com/43eaab

    这是文档:http://www.tinymce.com/wiki.php/Configuration:menu

    冰川

相关问题