【问题标题】:wysihtml5 commands come up as undefinedwysihtml5 命令显示为未定义
【发布时间】:2012-08-22 05:05:45
【问题描述】:

当我加载wysithml5 bootstrap 编辑器时,此命令或wysihtml5 bootstrap 支持的任何命令都不起作用。

当我提醒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

【问题讨论】:

  • 这里是我的库 js/wysihtml5-0.3.0_rc1.min.js">
  • 那么我不知道。我想你会很难找到对这个编辑器有经验的人。什么编辑器,你从中提取数据了吗?非常混乱....
  • 你解决过这个问题吗?这里有同样的问题。

标签: javascript wysihtml5 bootstrap-wysihtml5


【解决方案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 版本,也不是我使用的那个,但问题是一样的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-07
    • 2018-12-21
    • 2014-04-17
    • 1970-01-01
    • 2021-03-24
    • 2021-12-25
    • 1970-01-01
    相关资源
    最近更新 更多