我使用以下富文本格式: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);
  }


一切都好!

10-08 00:56