如何获取WP编辑器tinyMCE实例

时间:2015-06-29 作者:Sisir

我的主要目标是在编辑器内容发生更改时获取编辑器内容,并更新实时预览。为此,我需要向编辑器添加一个事件侦听器。顺便说一句,我在同一个页面中有两个编辑器,该页面是通过ajax加载的。

现在回到我的问题上来。我无法找到tinyMCE编辑器的实例。I can console.log() them but get empty result when I try to stringify them.

以下是console.log(tinymce.editors).

console.log(tinymce.editors)

所以,每当我尝试使用tinymce.editors.contentleft, tinymce.editors[\'contentleft\'], tinymce.get(\'contentleft\')tinymce.EditorManager.get(\'contentleft\') 在所有这些情况下undefinednull

为此工作了几天以上。希望能尽快找到正确的方向。

1 个回复
最合适的回答,由SO网友:bonger 整理而成

如果您等待SetupEditor 事件,然后您可以访问编辑器:

add_action( \'admin_print_footer_scripts\', function () {
    ?>
    <script type="text/javascript">
    jQuery(function ($) {
        if (typeof tinymce !== \'undefined\') {
            tinymce.on(\'SetupEditor\', function (editor) {
                if (editor.id === \'contentLeft\') {
                    // Could use new \'input\' event instead.
                    editor.on(\'change keyup paste\', function (event) {
                        console.log(\'content=%s\', this.getContent());
                    });
                }
            });
        }
    });
    </script>
    <?php
} );

结束

相关推荐

点击即可关闭TinyMCE插件窗口

我创建了一个小插件,在TinyMCE工具栏上添加了一个按钮。单击会打开一个弹出窗口,通过editor.windowManager.open(). 通过(1)单击“取消”或“确定”按钮,或(2)按esc 钥匙我想知道如何通过点击关闭插件的弹出窗口(例如,如果我点击弹出窗口外的TinyMCE覆盖)。WP的插入/编辑链接会触发一个具有该功能的弹出窗口,但据我所知,该插件使用一个自定义对话框,我希望有一个TinyMCE API方法/属性可以实现这一点,但文档非常简洁。这是我的插件,供参考:(function()