2014-11-14 63 views
1

我试图从WordPress中的TinyMCE下拉工具栏按钮中删除子项目。删除TinyMCE 4中的子菜单项4

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

TinyMCE plugin generated dropdown

Taulukon ominaisuudet == 表属性)的菜单项与

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

工具栏按钮与

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

创建210

editor是TinyMCE的插件构造PARAM:

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中删除它?

回答

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

GL。

+0

是的,它是第三方插件,因为WordPress不包括表格功能。我宁愿不直接使用'#id {display:none; }隐藏,因为ID可能随机改变。目前,我已经决定在输出HTML本身时使用PHP'preg_replace'来解析和删除所有表格属性。感谢'init'的提示,我会看看我能否从中得到任何东西。 – ojrask 2014-11-17 06:21:04

+0

只是好奇,你使用哪个插件的表功能? – 2014-11-17 15:03:23

+0

在WP回购中,它被称为* TinyMCE表格按钮*,除非我非常错误。 – ojrask 2014-11-17 15:07:24