Как добавить пользовательскую кнопку к панели инструментов, которая вызывает функцию JavaScript?

Я хотел бы добавить кнопку к панели инструментов, которая вызывает функцию JavaScript как Tada()?

Какие-либо идеи о том, как добавить это?

70
задан trejder 23 March 2015 в 11:58
поделиться

3 ответа

Я занимаюсь разработкой ряда пользовательских плагинов для CKEditor и вот мой выживающий пакет закладок:

Для вашей цели я бы рекомендовал посмотреть на один из плагинов в каталоге _source/plugins, например на кнопку "print" (печать). Добавить простую функцию Javascript довольно легко. Вы должны уметь дублировать плагин для печати (взять каталог из _source в фактический каталог плагинов/плагинов, беспокоиться о минимизации позже), переименовывать его, переименовывать каждое упоминание "print" внутри него, давать кнопке правильное имя, которое вы используете позже в настройках панели инструментов, чтобы включить кнопку, и добавлять вашу функцию.

.
91
ответ дан 24 November 2019 в 13:13
поделиться

Смотрите этот 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
            });
        }
    }); 
})();
28
ответ дан 24 November 2019 в 13:13
поделиться

Вам нужно создать плагин. Документация по CKEditorу для этого очень плохая, тем более что я считаю, что он значительно изменился со времен FCKEditor. Я бы предложил скопировать существующий плагин и изучить его. Быстрый гугл для "плагина к CKEditor" также нашел эту запись в блоге.

.
2
ответ дан 24 November 2019 в 13:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: