我有两个CKEditor,由Liferay脚本创建,在我看来一个接一个。两者都是分开的div。我想改变它的顺序。
我尝试使用这样的东西:
var firstDivWithCKEditor = document.getElementById("firstDivWithCKEditor");
var secondDivWithCKEditor = document.getElementById("secondDivWithCKEditor ");
var parentDiv = secondDivWithCKEditor.parentNode();
parent.insertBefore(secondDivWithCKEditor , firstDivWithCKEditor);
订单已更改,但在此操作之后,我无法在一个编辑器上执行任务并且内部编辑器中的html消失。点击编辑器中的任何按钮后,我在控制台上收到错误:未捕获TypeError:无法读取未定义的属性'getSelection'。
任何人都知道出了什么问题?
答案 0 :(得分:4)
使用经典(iframe
)编辑器实例无法做到这一点。您可以轻松地重新初始化您的实例(JSFiddle):
var e1, e2,
el1 = CKEDITOR.document.getById( 'editor1' ),
el2 = CKEDITOR.document.getById( 'editor2' );
function initEditors( reverse ) {
if ( e1 || e2 ) {
e1.destroy();
e2.destroy();
}
( reverse ? el2 : el1 ).insertBefore( ( reverse ? el1 : el2 ) );
e1 = CKEDITOR.replace( el1 );
e2 = CKEDITOR.replace( el2 );
}