Я хотел бы добавить кнопку к панели инструментов, которая вызывает функцию JavaScript как Tada()
?
Какие-либо идеи о том, как добавить это?
Я занимаюсь разработкой ряда пользовательских плагинов для CKEditor и вот мой выживающий пакет закладок:
Для вашей цели я бы рекомендовал посмотреть на один из плагинов в каталоге _source/plugins
, например на кнопку "print" (печать). Добавить простую функцию Javascript довольно легко. Вы должны уметь дублировать плагин для печати (взять каталог из _source в фактический каталог плагинов/плагинов, беспокоиться о минимизации позже), переименовывать его, переименовывать каждое упоминание "print" внутри него, давать кнопке правильное имя, которое вы используете позже в настройках панели инструментов, чтобы включить кнопку, и добавлять вашу функцию.
Смотрите этот URL для простого примера http://ajithmanmadhan.wordpress.com/2009/12/16/customizing-ckeditor-and-adding-a-new-toolbar-button/
Есть пара шагов:
1) создайте папку плагина
2) зарегистрируйте ваш плагин (URL выше говорит, что редактировать ckeditor.js файл НЕ делайте этого, так как он сломается при следующем перезагрузке новой версии. Вместо этого отредактируйте config.js и добавьте строку вида
config.extraPlugins = 'pluginX,pluginY,yourPluginNameHere';
3), создайте JS-файл, называемый plugin.js, в папке плагина. Вот мой код
(function() {
//Section 1 : Code to execute when the toolbar button is pressed
var a = {
exec: function(editor) {
var theSelectedText = editor.getSelection().getNative();
alert(theSelectedText);
}
},
//Section 2 : Create the button and add the functionality to it
b='addTags';
CKEDITOR.plugins.add(b, {
init: function(editor) {
editor.addCommand(b, a);
editor.ui.addButton("addTags", {
label: 'Add Tag',
icon: this.path+"addTag.gif",
command: b
});
}
});
})();
Вам нужно создать плагин. Документация по CKEditorу для этого очень плохая, тем более что я считаю, что он значительно изменился со времен FCKEditor. Я бы предложил скопировать существующий плагин и изучить его. Быстрый гугл для "плагина к CKEditor" также нашел эту запись в блоге.
.