沃尔克斯,
我得到了一些带有“tablecontrols”的TinyMCE盒子,但是控制器有9个按钮......远远不够。如何将其显示为菜单?
干杯, 斯蒂芬
答案 0 :(得分:1)
我通过插件找到了解决方案
答案 1 :(得分:1)
我花了一些时间为你找到解决方案。这可能是claviska如何开发他的table-dropdown-plugin的方式,但它可以用来创建任何带有自己的tinymce命令的下拉列表。
您需要将“my_list”添加到按钮列表中。 可以使用an own plugin创建自己的控件(列表下拉列表)(这并不难写)。在那里使用以下功能
创建列表框 createControl: function(n, cm) {
switch (n) {
case 'my_list':
listboxIdPart = 'my_list';
console.log('cm:', cm);
var ctrl = cm.createListBox(listboxIdPart, {
title : 'My list!', //optional
onselect : function(v) {
switch (v){
case '0':
tinymce.activeEditor.execCommand('mceTableMergeCells');
return;
}
case '1':
tinymce.activeEditor.execCommand('mceTableSplitCells');
return;
}
case '2':
tinymce.activeEditor.execCommand('mceTableDeleteCol');
return;
}
case '3':
tinymce.activeEditor.execCommand('mceTableDeleteRow');
return;
}
// ... etc ...
}
});
// add options to the list
// first param is the string that shows up in the list, second one is the value associated with that option
ctrl.add('1', '1'); // '1' or whatever name you prefer
ctrl.add('2', '2');
ctrl.add('3', '3');
// ... etc ...
// Return the new listbox instance
return ctrl;
}
return null;
},
您将在tiny_mce / plugins / table / editor_src.js第1780行ff下的tinymce developpement版本(未缩小版)中找到所有必需的mceCommands for tables listed in the tinycme docs和附加内容。通过这种方式,您可以影响列表的外观(甚至可以在列表中包含按钮而不是文本元素。)