Как установить некоторые стили CKEditor по умолчанию (представленные в поле со списком "Стили") в текущей позиции через javascript.?
Например, если курсор находится в одной позиции, я должен установить стиль "Маркер: желтый" для этой позиции после ввода любого символа, который должен измениться на желтый. Является ли это возможным?
Ответ 1 · рейтинг 2 · Reinmar
Я не уверен, понял ли я вас, но разве вы не хотите просто применить команду exec (или удалить), например. смелый стиль? Если да, вы можете сделать это:
editor.execCommand('bold');
Если у вас где-то в тексте есть пустое выделение (каретка), перед выполнением этой команды редактор создаст пустой элемент <strong>^</strong>, поэтому, когда пользователь начнет печатать, текст будет выделен жирным шрифтом.
Обновить
Стили применяются немного по-другому.
var style = new CKEDITOR.style(
{ name: 'Blue Title', element: 'h3', styles: { 'color': 'Blue' } });
style.apply(editor.document);
Это применит стиль Blue Title к текущему выделению. Вы можете найти другие определения стилей в _source/plugins/styles/styles/default.js (http://dev.ckeditor.com/browser/CKEditor/trunk/_source/plugins/styles/styles/default.js) или получить их в коде:
editor.getStylesSet(function(stylesDefinitions) {
// stylesDefinitions is an array
});