Я много работаю с позиционированием внутри CKEDITOR. Но я до сих пор не могу понять, почему следующий код иногда не работает?CKEDITOR - Установить Caret до конца
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
TypeError: б неопределен
Это означает, что редактор .document пуст, но когда я смотрю в editor.document, он заполнен?
Когда я пытаюсь установить диапазон во второй раз после того, как ошибка и она показывает следующее сообщение об ошибке: неперехваченное исключение: DOMException: INVALID_STATE_ERR
Ваше решение короче и чище. И работает с кодом getByID, но также с моим getNextNode(), чтобы найти элемент. Я не знаю, связано ли это с новой версией CKEDITOR.dom.range, которую я использовал. но ваше решение работает !, как всегда. – spons