Я использую CKeditor V3.x, и у меня есть несколько экземпляров на одной странице. Я должен добавить пользовательские стили для клиента, так что я использовал CKEDITOR.stylesSet.add как это (как указано в документации http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Styles):Mulitple Instanced CKEditor & CKEDITOR.stylesSet.add
CKEDITOR.stylesSet.add('mystyles',
[
{ name : 'Quote onderschrift', element : 'p', attributes : { 'class' : 'quote_sub' } },
{ name : 'Inleiding', element : 'p', attributes : { 'class' : 'inleiding' } }
]);
config.stylesSet = 'mystyles';
Это делает работу, когда только имея один редактор на странице. Когда у меня больше редакторов на одной странице, я получаю следующую ошибку (через Firebug):
uncaught exception: [CKEDITOR.resourceManager.add] Имя ресурса «mystyles» уже зарегистрировано.
В результате я не получаю никаких редакторов вообще. Хотя эта ошибка может показаться логичной, я бы хотел ее решить. На данный момент мне удалось решить следуя этой теме Adding custom styles to CKEditor, поэтому я решил добавление пользовательских стилей на самой странице, а что в конфигурации, как это:
CKEDITOR.replace('post_description', {
stylesSet :
[
{ name : 'Quote onderschrift', element : 'p', attributes : { 'class' : 'quote_sub' } },
{ name : 'Inleiding', element : 'p', attributes : { 'class' : 'inleiding' } }
]
});:
Как уже говорилось, это работает заставляет меня используйте это исправление на всех страницах, где мне нужны пользовательские стили. Есть ли лучшее решение о том, как это исправить? Я бы предпочел, чтобы стиль был добавлен в основной файл конфигурации. Любая помощь будет принята с благодарностью.
Эй, Джо, спасибо за ваш ответ. Я думаю, на данный момент это будет лучшим решением для меня, поскольку я могу устанавливать стили во всем мире, не получая ошибок. Спасибо, что поделился! –