Вы бы начать с определения ваших различных панелей инструментов в config.js
config.toolbar_MyToolUserMode1 = [
['Find', 'SelectAll'], ['Anchor'], ['Maximize']
];
config.toolbar_MyToolUserMode2 = [
['Find'], ['Anchor'], ['Maximize']
];
Эти панели инструментов-определений затем могут быть использованы позже на странице, но имейте в виду, что как только вы создаете экземпляр CKEditor, расположение панели инструментов не может быть изменен:
CKEDITOR.config.toolbar = "MyToolUserMode1";
var instance = CKEDITOR.appendTo(parentElement);
Решение 1:
Вы должны создать новый экземпляр, чтобы изменить панель инструментов динамически:
switch(UserMode)
{
case "1":
if (instance) instance.destroy();
CKEDITOR.config.toolbar = "MyToolUserMode1";
instance = CKEDITOR.appendTo(parentElement);
break;
case "2":
if (instance) instance.destroy();
CKEDITOR.config.toolbar = "MyToolUserMode2";
instance = CKEDITOR.appendTo(parentElement);
break;
}
Решение 2:
Однако, если вы счастливы с отображением полной панели инструментов также в UserMode 2 и седина в SelectAll-Button, то следующее может быть ваше решение:
CKEDITOR.config.toolbar = "MyToolUserMode1";
var instance = CKEDITOR.appendTo(parentElement);
switch(UserMode)
{
case "1":
instance.getCommand('selectAll').enable();
break;
case "2":
instance.getCommand('selectAll').disable();
break;
}
[EDIT 15 февраля]
Решение 3:
Согласно ваш комментарий -> как динамически создавать с Array.push
Нет конфигурации, необходимой в config.js
// your code
var myToolbarSection1 = new Array();
myToolbarSection1.push('Bold');
myToolbarSection1.push('Italic');
// attaching this section to toolbar
var myToolbar = new Array();
myToolbar.push(myToolbarSection1);
// setting the toolbar
CKEDITOR.config.toolbar_Dynamic = myToolbar;
CKEDITOR.config.toolbar = 'Dynamic';
var instance = CKEDITOR.appendTo('myDIVID');
вы можете сказать мне плз как вам получить UserMode config.js из ckeditor – Archana
@Archana его моя локальная переменная – RGA