5

<textarea><ul>.

<ul id="content">
<li id="bc1"><textarea id="text1" class="blockcontent"></textarea></li>
<li id="bc2"><textarea id="text2" class="blockcontent"></textarea></li>
<li id="bc3"><textarea id="text3" class="blockcontent"></textarea></li>
</ul>

“块内容”将用 初始化$('.blockcontent').tinymce({...});

如果我在#bc1 之后插入#bc3,$('#bc3').insertAfter($('#bc1'));内容将被删除。#text3 文本区域的内容不再可用。它消失了。如何解决这个问题?

我还尝试克隆 #bc3 $('#bc3').clone(true, true),在 #bc1 之后插入克隆并删除原始 #bc3。为了修复“jQuery 输入克隆错误”,我使用了jquery.fix.clone jQuery 插件。但是 clone 方法也有与 insertAfter 方法相同的问题。也许 insertAfter 也是如此:克隆和删除。不知道,随便。如果我先删除原始文件,然后插入克隆,则 TinyMCE 在克隆中不可用,但克隆的文本区域的内容可用。如果我先插入克隆然后删除原始内容,则 TinyMCE 可用,但原始内容不可用。

4

1 回答 1

4

在 DOM 中移动 tinymce 并不能如您所愿。在移动它之前,您需要调用mceRemoveControl,然后在移动编辑器源元素之后,您可以重新初始化编辑器。

克隆将产生相同的 ID。Tinymce 不允许使用相同的 ID。最好确保您的源 html 元素具有唯一的 id(不是没有)。

于 2012-03-02T14:51:14.407 回答