Uncaught TypeError: Cannot read property 'add' of undefined tinymce version 4.x

Uncaught TypeError: Cannot read property 'add' of undefined tinymce version 4.x

我使用的是tiny mce 4.x版本,这是我在html文件

中写的代码
 <script type="text/javascript" src="tinymce/tinymce.min.js"></script>
 <script>
   tinymce.init({
    selector: "textarea#elm1",
    theme: "modern",
    width: 500,
    height: 300,
    plugins: [
         "advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker",
         "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
         "save table contextmenu directionality emoticons template paste textcolor"
   ],
      content_css: "css/content.css",
      toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | print preview media fullpage | forecolor backcolor emoticons", 
       style_formats: [
           {title: 'Bold text', inline: 'b'},
           {title: 'Red text', inline: 'span', styles: {color: '#ff0000'}},
           {title: 'Red header', block: 'h1', styles: {color: '#ff0000'}},
           {title: 'Example 1', inline: 'span', classes: 'example1'},
           {title: 'Example 2', inline: 'span', classes: 'example2'},
           {title: 'Table styles'},
           {title: 'Table row 1', selector: 'tr', classes: 'tablerow1'}
      ],
     setup : function(ed) {
        ed.onBeforeRenderUI.add(function(ed, cm) {
         console.log('add function called');
       });
       ed.onLoadContent.add(function(ed, o) {
           console.log('add function called');
      });
}


}); 

<body>
    <textarea id="elm1" name="area"></textarea>
</body>

我遇到错误

Uncaught TypeError: Cannot read property 'add' of undefined when calling onBeforeRenderUI.add() method

。请帮我解决这个问题。谢谢。

感谢您分享适合您的解决方案。 但要正确:您的问题的解决方案是使用 tinymce 4 代码(onLoadContent 仅适用于 tinymce3)。 这里的正确使用方法是:

 setup : function(ed) {
    ed.on('BeforeRenderUI', function(e) {
     console.log('BeforeRenderUI function called');
   });
   ed.on('LoadContent', function(e) {
       console.log('LoadContent function called');
  });