Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript TinyMCE 4无法键入提供的插件文本字段_Javascript_Jquery_Tinymce_Tinymce 4 - Fatal编程技术网

Javascript TinyMCE 4无法键入提供的插件文本字段

Javascript TinyMCE 4无法键入提供的插件文本字段,javascript,jquery,tinymce,tinymce-4,Javascript,Jquery,Tinymce,Tinymce 4,使用JSW/jQuery1.11.1下的Tinymce4.1.5和一些JQuery插件,如表单和ui。我使用的TinyMCE版本不是带有嵌入式JQuery的版本 编辑器很好,我可以直接在里面输入,没有问题。仅使用tinymce提供的插件,所有使用按钮或非文本字段控件的功能都可以正常工作 然而,插件中的文本字段(如“链接”或“插入视频”)不允许我在字段中键入内容或选择其他文本字段,因此这似乎是一个焦点问题 这里有一个小提琴,下面是应用程序中更具体的初始化代码: var _clear_css_cac

使用JSW/jQuery1.11.1下的Tinymce4.1.5和一些JQuery插件,如表单和ui。我使用的TinyMCE版本不是带有嵌入式JQuery的版本

编辑器很好,我可以直接在里面输入,没有问题。仅使用tinymce提供的插件,所有使用按钮或非文本字段控件的功能都可以正常工作

然而,插件中的文本字段(如“链接”或“插入视频”)不允许我在字段中键入内容或选择其他文本字段,因此这似乎是一个焦点问题

这里有一个小提琴,下面是应用程序中更具体的初始化代码:

var _clear_css_cache;
_clear_css_cache = '/javascripts/canonical/tinymce/skins/lightgray/' +
                   'content.min.css?' +
                   new Date().getTime();

var _toolbar_1, _toolbar_2;
_toolbar_1 = 'formatselect, |, ' +
             'bold, italic, underline, strikethrough, ' +
                'subscript, superscript, |,' +
             'outdent, indent, blockquote, |,' +
             'alignleft, aligncenter, alignright, alignjustify';

_toolbar_2 = 'bullist, numlist, table, charmap, emoticons |,' +
             'link, unlink, |,' +
             'image, media, |,' +
             'code, preview |,' +
             'pasteword, print |,' +
             'undo, redo,';

var _contextmenu;
_contextmenu = 'link image inserttable | ' +
               'cell row column deletetable';

tinymce.init({
  selector: 'textarea.tinymce',
  toolbar: [_toolbar_1, _toolbar_2],
  plugins: [
    'advlist autolink autosave code charmap contextmenu emoticons image', 
    'lists link media paste preview print table'
  ],
  contextmenu: _contextmenu,
  theme: 'modern',
  content_css: _clear_css_cache,
  menubar: false,
  statusbar: false,
  convert_urls: false,
  relative_urls: false,
  invalid_elements: 'script'
});
为了将“textarea.tinymce”子项插入到目标div中,我使用了一个非常标准的调用:

function do_wysiwyg(_div) {
  tinymce.execCommand('mceAddEditor', true, $(_div).attr('id'));
});
我已经尝试了几种浏览器,本地浏览器和BrowserStack中的浏览器,但是没有一个插件文本字段可以在任何浏览器中工作,即使编辑器可以

另见

想法?提前谢谢

2014年10月7日更新:我想知道z指数是否有干扰,但到目前为止,在实验过程中没有运气。这是从一个非常旧的tinymce安装升级而来,插件在那里工作得很好,所以我们不希望tinymce代码/调用本身之外有任何转换


更新2 2014年7月10日:现在有小提琴:。仅在使用BlockUI时出现!我打赌BlockUI现在有一个焦点陷阱。

一个似乎有效的解决方案是将.BlockUI调用中的bindEvents=false作为选项与msg等一起传递。请参阅如何修改原始fiddle以允许插件工作

我担心的是,这种方法会解除blockUI覆盖中的所有内容的绑定,而不仅仅是tinymce插件,因此可能太过分了


如果您有更好的建议,请发表评论或发布不同的答案。在其他人有机会参与之前,我不会接受这个答案。谢谢

如果其他人有更好的答案,我很乐意重新分配答案。这似乎是一个更好的解决方案。你试过小提琴,它可以工作-有一个问题:你在第一个字段中键入的文本出现在第二个字段中。在chrome和opera中测试。