我需要能够在整个网页上交换 CKEditor 富文本区域。我当前的脚本在未应用 CKEditor 时效果很好,但在应用 CKEditor 时无法成功移动文本区域(和输入的文本)。这是一些代码(需要 ckeditor 才能工作):
<html>
<head>
<title>Sample - CKEditor</title>
<script type="text/javascript" src="/ckeditor/ckeditor.js"></script>
</head>
<body>
<form method="post">
<p>
My Editor:<br />
<a href="#" onclick="swap(this.parentNode.nextSibling.nextSibling, this.parentNode)">first link</a>
<textarea name="editor1"><p>Initial value.</p></textarea>
<script type="text/javascript">
CKEDITOR.replace( 'editor1' );
</script>
</p>
<p>
My Editor2:<br />
<textarea name="editor2"><p>Initial value2.</p></textarea>
<script type="text/javascript">
CKEDITOR.replace( 'editor2' );
</script>
</p>
<p>
<input type="submit" />
</p>
</form>
</body>
</html>
<script>
function swap(from, to){
if(from && to){
var parent = from.parentNode;
var t;
if(parent){
t = parent.removeChild(from);
parent.insertBefore(t, to);
t = null;
}
delete(t);
delete(parent);
}
}
</script>
如果您注释掉 CKEDITOR.replace() 调用,那么进行交换就没有问题。关于如何解决这个问题有什么建议吗?谢谢。
最佳答案
事实证明这是一个错误。 http://cksource.com/forums/viewtopic.php?t=18417
关于移动 CKEditor 节点时 Javascript DOM 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2677757/