Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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
JQuery模式中的TinyMCE模式不可编辑_Jquery_Tinymce_Modal Dialog - Fatal编程技术网

JQuery模式中的TinyMCE模式不可编辑

JQuery模式中的TinyMCE模式不可编辑,jquery,tinymce,modal-dialog,Jquery,Tinymce,Modal Dialog,我正在jQueryUI模式对话框中运行tinyMCE编辑器。除了tinyMCE的那些功能本身打开了一个新的模式(例如链接)之外,一切都正常工作。这些模态显示良好,但输入区域不可编辑。 根据Firebug,js代码还可以,HTML非常简单 有线索知道它可能来自哪里吗 编辑: tinymce.init({ 选择器:“文本区域”, 插件:“自动链接表textcolor”, 梅努巴:错, 工具栏:“撤消重做|样式选择|前景色背景色|粗体斜体|链接取消链接|表格” }); $(文档).ready(函数(

我正在jQueryUI模式对话框中运行tinyMCE编辑器。除了tinyMCE的那些功能本身打开了一个新的模式(例如链接)之外,一切都正常工作。这些模态显示良好,但输入区域不可编辑。 根据Firebug,js代码还可以,HTML非常简单

有线索知道它可能来自哪里吗

编辑:


tinymce.init({
选择器:“文本区域”,
插件:“自动链接表textcolor”,
梅努巴:错,
工具栏:“撤消重做|样式选择|前景色背景色|粗体斜体|链接取消链接|表格”
});
$(文档).ready(函数(){
$(“.sendmail”)
.按钮({
图标:{
主:“ui图标邮件已关闭”
},
文本:false
})
。单击(函数(){
$(#sendmailform”)。对话框(“打开”);
})
;
$(函数(){
$(“#sendmailform”)
.对话({
自动打开:错误,
标题:“发送邮件确认”,
莫代尔:是的,
宽度:750,
[按钮和ajax]
})
;
});
});

您的问题需要更详细的回答,但您可以尝试以下方法:

tinymce.get('editor_id').getBody().setAttribute('contenteditable', 'false');

您的问题需要更详细的回答,但您可以尝试以下方法:

tinymce.get('editor_id').getBody().setAttribute('contenteditable', 'false');

对于jQuery UI对话框,可以执行以下操作:

$.widget("ui.dialog", $.ui.dialog, {
    _allowInteraction: function(event) {
        return !!$(event.target).closest(".mce-container").length || this._super( event );
    }
});

对于jQuery UI对话框,可以执行以下操作:

$.widget("ui.dialog", $.ui.dialog, {
    _allowInteraction: function(event) {
        return !!$(event.target).closest(".mce-container").length || this._super( event );
    }
});

感谢@Harry,TinyMCE bugtracker上的伟大人物提供了解决方案

在加载tinyMCE之前,我刚刚在DOM之后加载的脚本上添加了以下代码:

$(document).on('focusin', function(e) {
    if ($(event.target).closest(".mce-window").length) {
        e.stopImmediatePropagation();
    }
});

工作起来很有魅力,而@Harry发布的却没有。

多亏了@Harry,TinyMCE bugtracker上的伟大人物提供了解决方案

在加载tinyMCE之前,我刚刚在DOM之后加载的脚本上添加了以下代码:

$(document).on('focusin', function(e) {
    if ($(event.target).closest(".mce-window").length) {
        e.stopImmediatePropagation();
    }
});

就像一个魔咒,而@Harry发布的则没有。

这将如何解决OP的问题?这将如何解决OP的问题?非常感谢提供链接。向上投票,但不是解决方案-将其发布在下面的答案中:)经过相当多的发展,两种解决方案似乎都根据上下文工作。我发布的一个在大多数页面上都有效,但其中一个页面不断抛出“事件未定义错误”。我用上面的代码替换了我的代码,这很有效。当页面上有嵌套的对话时,这很有效。为什么tinymce没有默认内置此功能?!非常感谢您提供的链接。向上投票,但不是解决方案-将其发布在下面的答案中:)经过相当多的发展,两种解决方案似乎都根据上下文工作。我发布的一个在大多数页面上都有效,但其中一个页面不断抛出“事件未定义错误”。我用上面的代码替换了我的代码,这很有效。当页面上有嵌套的对话时,这很有效。为什么tinymce没有默认内置此功能?!