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