AngularJS TinyMCE textarea专注于Click事件

时间:2016-03-07 13:17:22

标签: javascript angularjs angularjs-directive tinymce

我的项目使用了tinymce文本编辑器和angularJS框架。我从https://github.com/angular-ui/ui-tinymce获得了指令,并且我能够通过GitHub提供的示例将编辑器连接到TinyMce!

我对文本编辑器没有任何问题,我能够从文本编辑器的模型中检索内容,并使用数据库中的值更新模型。一切正常,直到最近我发现我无法专注于文本编辑器!。

我是焦点指令,我可以在点击事件时将焦点设置在文本区域,如果我删除了tinymce引用,它就可以工作。但是我无法在点击事件时将注意力集中在编辑器上。 请帮忙!

我找到了修补

添加element.append(scope.chartInstance.generateLegend()); 到$ scope.watch

1 个答案:

答案 0 :(得分:2)

实际上,您可以在tinymce选项中设置焦点和模糊事件。以下是示例:

angular.module('MyApp', ['ui.tinymce'])
.controller('MainCtrl', function () {
  var ctrl = this;
  ctrl.tinymceOptions = {
    setup: funtion (editor) {
      editor.on("focus", function () {
        ctrl.showTips = true;
      });
      editor.on("blur", function () {
        ctrl.showTips = false;
      });
    }
  }
});
<body ng-app="MyApp">
  <form ng-controller="MainCtrl as ctrl">
    <textarea ui-tinymce="ctrl.tinymceOptions" ng-model="ctrl.tinymceInput"></textarea>

    <div ng-show="ctrl.showTips">
      <p>Some tips here...</p>
    </div>
   </form>
 </body>

我认为这种方式对其他人来说更容易理解,并且在编码方面更优雅。