Создайте пользовательский плагин кнопки в Summernote
Я пытаюсь создать собственный плагин для кнопок в Summernote, но кнопка ui.button создает, конечно, кнопку. Есть ли способ сделать это div например?
context.memo('button', function() {
return ui.buttonGroup([
ui.button({
className: 'someClass',
tooltip: 'tooltipInfo',
data: {
toggle: 'dropdown'
},
click: function() {}
}),
То, что я пытался это сделать:
var buttonGroup = ui.buttonGroup([ ... ]);
buttonGroup.changeTag('div');
return buttonGroup;
Затем обновите кнопку вручную и измените ее тег на div. Это "работает", но, например, событие click в buttonGroup, которое я установил, не работает в этом случае. Даже пытался прикрепить событие on('click') к переменной buttonGroup, и все же щелчок не срабатывает.
Любые идеи о том, как я могу добиться этого по-другому?
1 ответ
Решение
Это мой способ поставить кнопку в Summernote
var btnAttch = function (context) {
var ui = $.summernote.ui;
var button = ui.button({
contents:
'<label class="custom-file-upload"> <input type="file" class="input-file" id="input-file-' + id + '" multiple/>' +
'<i class="glyphicon glyphicon-paperclip"></i> </label>',
tooltip: 'Attach file',
});
}
$(".txtInstrucoes-" + id).summernote({
height: 300,
toolbar: [
['style', ['bold', 'italic', 'underline']],
['color', ['color']],
['para', ['ul', 'ol', 'paragraph']],
['fontsize', ['fontsize']],
['btn-anexar', ['btnAnexar']]
],
buttons: {
btnAttch: btnAttch
},
disableDragAndDrop: true,
disableResizeEditor: true,
callbacks: {
onInit: function () {
$.EmpresaAPI.Events.OnChangeInputFile(id);
},
}
})