TinyMCE编辑不喜欢被感动

时间:2010-03-29 03:00:40

标签: html dom tinymce

在我拥有的页面上,我需要偶尔在DOM树中移动TinyMCE编辑器。但是,出于某种原因,编辑不喜欢它:它完全清除并变得无法使用。据我所知,这种行为在Safari 4和Firefox 3.6之间是一致的,但不是Internet Explorer 7/8。 Here's an example

真的让我感到沮丧的是做一些在Internet Explorer中工作的东西,但没有更好的浏览器。在文档中是否有一些关于永远不会尝试在DOM树中移动编辑器的内容?有某种解决方法吗?

2 个答案:

答案 0 :(得分:8)

有同样的问题,我在这里解决了这个问题......

创建问题

我使用jquery移动包含tinymce编辑器的dom元素,导致它丢失所有内容:

$('.form-group:last').after($('.form-group:first'))

在此之后,编辑的iframe内容将被删除。

解决方案

var textareaId = 'id_of_textarea';
tinyMCE.get(textareaId).remove();
tinyMCE.execCommand("mceAddEditor", false, textareaId);

有时编辑器会将iframe添加回来,但不可见。如果是这种情况,请取消隐藏容器:

$textarea = $('#' + textareaId)
$textarea.closest('.mce-tinymce.mce-container').show()

注意,这是使用tinymce 4.x。

答案 1 :(得分:7)

这是一个浏览器错误/问题,而不是TinyMCE的问题。在某些浏览器中保留iframe内容是不可能的,因为一旦从文档/窗口卸载dom中删除节点。我建议先删除编辑器实例,然后重新添加它,而不是在DOM中移动它。