команды wysihtml5 отображаются как неопределенные

Когда я загружаю редактор начальной загрузки wysithml5, эта команда или любая другая команда, которую поддерживает начальная загрузка wysihtml5, не работает.

Когда я предупреждаю editor.composer.commands, оно отображается как неопределенное.

Что я могу сделать, чтобы исправить это? jQuery загружен с помощью jQuery-UI, я не знаю, поможет ли это.

$(document).ready(function() {
    $('#content').wysihtml5();
    var editor = $('#content').wysihtml5().data("wysihtml5").editor;
    editor.currentView.element.focus();
    editor.composer.commands.exec('insertHTML' , 'Something');`
});

Ссылочный редактор: https://github.com/xing/wysihtml5


person Eugene Scray    schedule 27.08.2012    source источник
comment
вот мои библиотеки js/wysihtml5-0.3.0_rc1.min.js›‹/script› ‹script src=ajax.googleapis.com/ajax/libs/jquery/1.7.1/› ‹script src=ajax.googleapis.com/ajax/libs/jqueryui/1.8.18 /  -  person Eugene Scray    schedule 27.08.2012
comment
ну тогда понятия не имею. Я думаю, у вас будет много проблем с поиском кого-то с опытом работы в этом редакторе. А какой редактор, ты из него данные вытаскивал? Очень запутанно....   -  person thatidiotguy    schedule 27.08.2012
comment
Вы когда-нибудь решали это? Здесь такая же проблема.   -  person donnapep    schedule 20.05.2014


Ответы (1)


У меня возникла эта проблема при программном использовании команд вскоре после создания экземпляра редактора и его загрузки на страницу. Рассмотрим следующий код:

<textarea id="wysihtml5-textarea" rows="3" autofocus></textarea>

Я решил это, позволив некоторое время после загрузки редактора с помощью window.setTimeout. Код ниже является примером использования команды «insertImage»:

$(function () {
   var editorEle = $('#wysihtml5-textarea');
   var editorToolbarEle = $('#wysihtml5-toolbar');
   var editor = new wysihtml5.Editor(editorEle.prop('id'), {});

   window.setTimeout(function() {
      editor.focus();
      editor.composer.commands.exec("insertImage", { src: 'foo.png', alt: "image.." });
   }, 200);
});

Вы можете увидеть, как работает этот код, и протестировать его, используя следующий JSFiddle (удалите setTimeout, чтобы увидеть возникновение ошибки):

http://jsfiddle.net/wv0fbsew/

У меня была эта проблема при использовании разветвленной версии редактора (wysihtml5x). Это не версия Bootstrap, упомянутая в этом вопросе, и не та, которую я использовал, но проблема та же.

person Leo    schedule 28.10.2014