繁体   English   中英

TinyMCE无法获取未定义或空引用的属性“ setContent”

[英]TinyMCE Unable to get property 'setContent' of undefined or null reference

我知道这里已经讨论了很多主题,但是无论我采用哪种方法,我都会遇到诸如“无法获取未定义或空引用的属性'setContent'”之类的错误,或者该行执行但没有任何反应。

这就是我所知道的。 tinymce初始化并且是有效的对象。 html变量具有从父窗口获取的适当HTML。 jQuery已加载且功能正常。

除了下面的代码,我也尝试过。

tinyMCE.activeEditor.setContent(html);
tinymce.editors[0].setContent(html);
$('textarea#XRMeditor').val(html);  * Before initialization 

我在tinymce初始化之前和之后尝试了所有方法(以防万一)。

<!DOCTYPE html>
<html>
<head>

          <script src="sage_jquery.min.js" type="text/javascript"></script>
          <script src="tinymce_/tinymce.min.js" type="text/javascript"></script>

  <script>
      var html = window.parent.document.getElementById("descriptionIFrame").contentDocument.getElementsByTagName('body')[0].innerHTML;
      debugger;
      //$('textarea#XRMeditor').val(html);
      tinymce.init({
          selector: 'textarea#XRMeditor'
});
      tinymce.get('XRMeditor').setContent(html);

  </script>
</head>
<body>
  <textarea id="XRMeditor">Easy (and free!) You should check out our premium features.</textarea>
</body>
</html>

我怀疑这个问题是您试图在页面上初始化之前与TinyMCE进行交谈。

您的get()调用位于页面的顶部,我会怀疑当浏览器处理TinyMCE已初始化的脚本时。 您可以使用“ init”处理程序来延迟此调用的发生时间:

tinyMCE.init({
  //your regular init parameters here...
  setup: function(editor) {
    editor.on('init', function() {
      //load your content here!
      tinymce.activeEditor.setContent(html);
      //or
      tinymce.editors[0].setContent(html);
    });
  }
});  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM