4

我正在为新的 TinyMCE 4 开发一个自定义插件。这个插件使用了一个模态屏幕。因为我想使用我已经开发的模态屏幕/JS 服务,所以我选择不使用 TinyMce 的 Window manager

问题是,一旦我打开打开的模式屏幕,TinyMCE 就会失去焦点。我希望 TinyMce 保持工具栏打开,否则我无法与编辑器交互。TinyMCe 关闭是因为它收到了一个模糊事件(很可能是因为它不知道任何打开的窗口)。

可以在以下 Fiddle 中找到显示问题的缩小问题。只要单击示例按钮,就会出现问题。 http://fiddle.tinymce.com/pudaab/1

缩短的代码附在下面:

tinymce.PluginManager.add('example', function(editor, url) {
    // Add a button that opens a window
    editor.addButton('example', {
        text: 'My button',
        icon: false,
        onclick: function() {
            var selection = editor.selection,
                dom = editor.dom,
                selectedElm,
                anchorElm;

            // Focus the editor since selection is lost on WebKit in inline mode
            editor.focus();

           // Open a modal screen using bootstrap
            $('#elem').modal();

            // Note: As soon as modal opens TinyMce receives a blur event and disables the toolbar
        }
    });
});
4

1 回答 1

2

我终于设法自己解决了。诀窍是editor.nodeChanged()在调用模态屏幕之前调用。然后,当您关闭模态屏幕时,您会调用editor.focus().

不过感谢您的帮助!

于 2013-08-01T11:40:44.723 回答