我使用以下富文本格式:https://github.com/bootstrap-wysiwyg/bootstrap3-wysiwyg
它工作正常,但我需要获取wysihtml5编辑器对象才能运行一些命令
doc表示我可以使用以下代码获取wysihtml5编辑器对象:
var wysihtml5Editor = $('#some-textarea').data("wysihtml5").editor;
wysihtml5Editor.composer.commands.exec("bold");
但是wysihtml5Editor尚未定义
记录$('#some-textarea')。data(“ wysihtml5”)打印如下:
Wysihtml5 {el: n.fn.init[1], toolbar: n.fn.init[1], editor:undefined}
如何获得编辑器对象?
最佳答案
我自己找到了答案,但是无论如何都要感谢Daemedeor和DA。
在bootstrap3-wysihtml5.js中,createEditor方法未返回,因此
this.editor = this.createEditor(toolbarOpts);
this.editor未定义
我这样添加回报
createEditor: function(options) {
options = options || {};
// Add the toolbar to a clone of the options object so multiple instances
// of the WYISYWG don't break because 'toolbar' is already defined
options = $.extend(true, {}, options);
options.toolbar = this.toolbar[0];
return this.initializeEditor(this.el[0], options);
}
一切都好!