1

当我在视图底部并在一些 html 之后执行以下操作时:

jQuery(document).ready(function() {
        tinyMCE.activeEditor.setContent("asdsad");
    }); 

我在 Firefox 中遇到错误

错误:TypeError:tinyMCE.activeEditor 为空

例如,当我在函数中添加该行并在单击事件后激活它时,代码可以工作

<input type="button" onclick="setcontent()" value="Set the content" >

<script>
    function setcontent(){
      tinyMCE.activeEditor.setContent("asdsad");
    }
</script>

我在想 TinyMCE 在 jQuery(document).ready 之后还没有完成加载?还是我在这里遗漏了什么?

4

3 回答 3

2

Joomla 中的每个编辑器插件都有一个用于插入文本的处理程序

尝试jInsertEditorText('hello world', 'jform_articletext');

其中第二个参数是 JForm 编辑器字段的 id(对于 com_content 它是jform_articletext)。通过这种方式,您可以将内容插入当前使用的任何编辑器(tinyMCE、codemirror ...)。

于 2013-04-26T14:10:03.733 回答
1

你可以试试这个

 jQuery(document).ready(function() {
    if (window.tinyMCE && window.tinyMCE.activeEditor)
      {
             tinyMCE.activeEditor.setContent("asdsad");
      }
    }); 
 Or 

你可以初始化 tinyMCE 然后 setContent

  tinyMCE.init({
         mode : "exact",
         elements : "updateeditor",
         theme : "advanced",
         plugins : "inlinepopups, example",
         theme_advanced_buttons3_add : "example",
        });
于 2013-04-26T13:28:54.543 回答
1

tinymce.init({ ... setup: function(editor) { editor.on('init', function(e) { console.log('init event', e); }); } });

http://www.tinymce.com/wiki.php/api4:event.tinymce.Editor.init

于 2013-09-17T12:17:57.017 回答