如何在tinymce的上下文菜单中添加项目。我需要从上下文选择tinymce
打开一个厚箱 var url = "upload.php?keepThis=true&TB_iframe=1&width=1000&height=400&model=true";
tb_show("Edit Image", url);
我可以用上面的代码调用thickbox。我需要在contextmenu插件中重新编码。帮助我
答案 0 :(得分:1)
好的,在这种情况下你需要加载contextmenu插件(在加载自定义插件之前执行此操作!)
plugins: '...,contextmenu,....,customcontextmenu,...',
以下是自己的contextmenu插件的完整示例代码。您需要将此代码放在名为“editor_plugin.js”的文件(以及名为“editor_plugin_src.js”的文件)中,该文件位于plugins目录的名为“contextmenu”的子目录中。
(function() {
tinymce.PluginManager.requireLangPack('customcontextmenu');
tinymce.create('tinymce.plugins.customcontextmenu', {
init : function(ed, url) {
ed.addCommand('custom_option', function() {
// do what you want here!!!
});
// we need the real contextmenu in order to make this work
if (ed && ed.plugins.contextmenu) {
// contextmenu gets called - this is what we do
ed.plugins.contextmenu.onContextMenu.add(function(th, m, e, col) {
// remove all options from standard contextmenu
m.removeAll();
// only if selected node is an image do this
if (typeof e !== "undefined" && e.nodeName.toLowerCase() == 'img'){
th._menu.add({
title: 'Option 1',
icon: 'option1', // you might need to specify an image here
cmd: 'custom_option' // call command custom_option
});
m.addSeparator();
// Second option
//m.add({
// title: 'Option 2',
// icon: 'option2',
// cmd: 'custom_option2'
//});
}
else {
// you might want to hinder the display of the contextmenu in all other cases
// or present other options....
}
});
}
});
},
// Register plugin
tinymce.PluginManager.add('customcontextmenu', tinymce.plugins.customcontextmenu);
})();
确保括号设置正确(我必须复制/粘贴并删除部分代码,以免丢失括号)。