如何从右键单击菜单中删除指定的选项

How to remove the specified option from right click meun in tinymce?

本文关键字:删除 选项 菜单 右键 单击      更新时间:2023-09-26

我想从tinymce的右键菜单中删除图像属性选项。我用的是timymce 3。X版请帮帮我

你可以这样做:

tinyMCE.init({
    setup: function (ed) {
        ed.onInit.add(editor_oninit);
    }
...
});
function editor_oninit(ed) {
    // Add hook for onContextMenu so that Insert Image can be removed
    ed.plugins.contextmenu.onContextMenu.add(editor_remove_image);
}

和函数

function editor_remove_image(sender, menu) {
    // create a new object
    var otherItems = {};
    for (var itemName in menu.items) {
        var item = menu.items[itemName];
        if (/^mce_/.test(itemName)) {
            if (item.settings) {
                if (item.settings.cmd == "mceImage" || item.settings.cmd == "mceAdvImage") {
                    // skip these items
                    continue;
                }
            }
        }
        // add all other items to this new object, so it is effectively a clone
        // of menu.items but without the offending entries
        otherItems[itemName] = item;
    }
    // replace menu.items with our new object
    menu.items = otherItems;
}

我第一次使用这个TinyMCE,实际上是在寻找解决这里问的相同问题的方法。

下面是我的TinyMCE脚本:
tinymce.init({
    selector: "textarea#elm1",
    images_upload_credentials: false,
    theme: "modern",
    branding: false,
    <!-- elementpath: false, -->
     menubar:false,
     <!-- preview_styles: false, -->
    height:300,
         automatic_uploads: false,
    plugins: [
        "advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker",
        "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
        "save table contextmenu directionality emoticons template paste textcolor"
    ]
}); 

现在,如何删除右键单击图像Url选项?

直接从插件中删除图像

plugins: [
        "advlist autolink link lists charmap print preview hr anchor pagebreak spellchecker",
        "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
        "save table contextmenu directionality emoticons template paste textcolor"
    ]

对于使用TinyMCE 5的用户,一个解决方案可能是显式指定上下文菜单中允许的项:

tinymce.init({
  ...
  contextmenu: 'link table' /*just do not mention the 'image'*/
  ...
});