Dom CKEDITOR-将插入符号设置为结束

Dom CKEDITOR-将插入符号设置为结束,dom,ckeditor,range,selection,Dom,Ckeditor,Range,Selection,我经常在CKEDITOR中定位。 但是我仍然不明白为什么下面的代码 有时候不管用 var range = new CKEDITOR.dom.range(editor.document); range.moveToElementEditablePosition(element, setToEnd); editor.getSelection().selectRanges([range]); 我认为这与我提供的元素输入有关。 但我不确定 有人知道MoveToElementEd

我经常在CKEDITOR中定位。 但是我仍然不明白为什么下面的代码 有时候不管用

    var range = new CKEDITOR.dom.range(editor.document);
    range.moveToElementEditablePosition(element, setToEnd);
    editor.getSelection().selectRanges([range]);
我认为这与我提供的元素输入有关。 但我不确定

有人知道MoveToElementEdit职位的工作要求吗? 我最后一次检查输入是一个SPAN元素

还是有更安全的(跨浏览器)解决方案

==编辑====

我发现一个错误,它来自新的CKEDITOR.dom.range

类型错误:b未定义

这意味着editor.document是空的,但当我查看editor.document时,它已填充

当我在错误发生后第二次尝试设置范围时,它还会显示以下错误:未捕获异常:DomeException:INVALID_STATE_ERR

尝试此HTML:

<p><span id="test">Text</span></p>
结果似乎是正确的:

<p><span>BARTextFOO</span></p>
BARTextFOO


您还有其他案例吗?

您的解决方案更短、更干净。并与getByID代码一起使用,但也与我的getNextNode()一起使用以查找元素。我不知道这是否与我使用的新的CKEDITOR.dom.range版本有关。但是你的解决方案有效!,一如既往。
<p><span>BARTextFOO</span></p>