我有一个CKEditor实例,我想操作内容,并将插入位置恢复到之后的位置。问题在于,当您调用setData
时,它会将插入符重置为编辑器的开头。如果您要更改所有内容,这是可以理解的,但我只是对数据进行了微小的更改。
editor.on('change', function () {
var data = editor.getData();
// manipulate `data`
var manipulatedData = data;
editor.setData(manipulatedData);
});
答案 0 :(得分:1)
我找到了一个简单的解决方案供您查询。而不是添加setdata。你可以使用inserthtml
editor.insertHtml(manipulatedData).
插入数据后将光标保持在结束位置
答案 1 :(得分:0)
一个简单的解决方案是将setData设置为'',然后将insertHtml与您的内容一起使用。 setData是asyncronius,因此您必须使用回调函数。这是有效的代码:
oEditor.setData('', {callback: function() {
oEditor.insertHtml(YOUR_HTML);
}
});