我在 CKEDITOR 中进行了很多定位工作。但我仍然无法弄清楚为什么以下代码有时不起作用?
var range = new CKEDITOR.dom.range(editor.document);
range.moveToElementEditablePosition(element, setToEnd);
editor.getSelection().selectRanges([range]);
我认为这与我提供的元素输入有关。但我不确定。
有谁知道 moveToElementEditbalePosition 工作的要求是什么?我最后一次检查我的输入是一个 SPAN 元素。
http://docs.ckeditor.com/#!/api/CKEDITOR.dom.range-method-moveToElementEditablePosition
还是有更安全的(跨浏览器)解决方案?
==== 编辑 ====
我发现了一个错误,它来自新的 CKEDITOR.dom.range
类型错误:b 未定义
这意味着 editor.document 是空的,但是当我查看 editor.document 时它已被填充?
当我在错误后第二次尝试设置范围时,它还显示以下错误:未捕获的异常:DOMException:INVALID_STATE_ERR