我正在使用媒体编辑器,我有以下代码:
rangy.init();
var HighlighterButton = MediumEditor.extensions.button.extend({
name: 'highlighter',
tagNames: ['mark'],
contentDefault: '<b>H</b>',
contentFA: '<i class="fa fa-paint-brush"></i>',
aria: 'Highlight',
action: 'highlight',
init: function () {
MediumEditor.extensions.button.prototype.init.call(this);
this.classApplier = rangy.createClassApplier('highlight', {
elementTagName: 'mark',
normalize: true
});
},
handleClick: function (event) {
this.classApplier.toggleSelection();
// Ensure the editor knows about an html change so watchers are notified
// ie: <textarea> elements depend on the editableInput event to stay synchronized
this.base.checkContentChanged();
}
});
var editor = new MediumEditor('.editable', {
toolbar: {
buttons: ['bold', 'italic', 'underline', 'highlighter']
},
buttonLabels: 'fontawesome',
extensions: {
'highlighter': new HighlighterButton()
}
});
正如我所做的那样,在handleClick函数中,我只检测编辑器中的选定文本,感谢您的回复。
他们可以告诉我如何放置函数及其工作原理:saveSelection(),restoresSelection()等。