Summernote還支持自定義按鈕。如果你想創建你自己的按鈕,你可以簡單地定義和使用選項。
使用$ .summernote.ui創建按鈕對象。此按鈕對象具有以下屬性。
內容:要顯示的內容上的按鈕 提示:當鼠標移到 點擊提示文本:鼠標點擊
示例插入文本「歡迎」時,回調函數被調用。
var welcomeBtn = function (context) {
var ui = $.summernote.ui;
// create button
var button = ui.button({
contents: '<i class="fa fa-child"/> WELCOME',
tooltip: 'welcome',
click: function() {
// invoke insertText method with 'welcome' on editor module.
context.invoke('editor.insertText', 'welcome');
}
});
return button.render(); // return button as jquery object
}
現在您可以在工具欄選項上定義自定義按鈕。
$('.summernote').summernote({
toolbar: [
['mybutton', ['welcome']]
],
buttons: {
welcome: welcomeBtn
}
});
同樣自定義下拉按鈕,你可以做這樣的事情:
var emojiBtn = function (context) {
var ui = $.summernote.ui;
var emojiList = ui.buttonGroup([
ui.button({
className: 'dropdown-toggle',
contents: '<span class="fa fa-smile-o"></span> <span class="caret"></span>',
tooltip: "Insert Greetings",
data: {
toggle: 'dropdown'
}
}),
ui.dropdown({
className: 'dropdown-style',
contents: "<ol><li>smile</li><li>sleepy</li><li>angry</li></ol>",
callback: function ($dropdown) {
$dropdown.find('li').each(function() {
$(this).click(function() {
context.invoke("editor.insertText", $(this).html());
});
});
}
})
]).render();
}
,如果你想顯示一些預填充的名單到您的下拉列表,那麼你可以做這樣的事情..
var emojiBtn = function (context) {
var ui = $.summernote.ui;
var list = $('#elements-list').val();
var button = ui.buttonGroup([
ui.button({
className: 'dropdown-toggle',
contents: '<span class="fa fa-smile-o"></span> <span class="caret"></span>',
tooltip: "Insert Greetings",
data: {
toggle: 'dropdown'
}
}),
ui.dropdown({
className: 'drop-default summernote-list',
contents: "<ul>"+list+"</ul>",
callback: function ($dropdown) {
$dropdown.find('li').each(function() {
$(this).click(function() {
context.invoke("editor.insertText", $(this).html());
});
});
}
})
]);
return button.render();
}