有没有办法将光标设置在CKEditor内容的末尾?
这位开发人员也问了,但没有得到任何回答:
http://cksource.com/forums/viewtopic.php?f=11&t=19877&hilit=cursor+end
我想在CKEditor内的文本末尾设置焦点。当我使用:
ckEditor.focus();
它将我带到CKEditor中已经存在的文本的开头。
发布于 2013-06-01 04:14:43
Dan的回答对我来说得到了奇怪的结果,但小小的改变(除了修复打字错误之外)让它起作用了:
var range = me.editor.createRange();
range.moveToElementEditEnd( range.root );
me.editor.getSelection().selectRanges( [ range ] );
发布于 2013-05-01 04:11:31
根据CKEditor 4的文档,一旦拥有了编辑器对象,就可以执行以下操作。
var range = editor.createRange();
range.moveToPosition( range.root, CKEDITOR.POSITION_BEFORE_END );
editor.getSelection().selectRanges( [ range ] );
链接:http://docs.ckeditor.com/#!/api/CKEDITOR.dom.selection (在selectRanges函数下)。
发布于 2014-11-15 07:48:16
这是对@peter-tracey的类似回答。在我的例子中,我的插件是插入一个引用。如果用户做了选择,我需要禁用选择并将光标放在句子的末尾。
// Obtain the current selection & range
var selection = editor.getSelection();
var ranges = selection.getRanges();
var range = ranges[0];
// Create a new range from the editor object
var newRange = editor.createRange();
// assign the newRange to move to the end of the current selection
// using the range.endContainer element.
var moveToEnd = true;
newRange.moveToElementEditablePosition(range.endContainer, moveToEnd);
// change selection
var newRanges = [newRange];
selection.selectRanges(newRanges);
// now I can insert html without erasing the previously selected text.
editor.insertHtml("<span>Hello World!</span>");
https://stackoverflow.com/questions/4536532
复制相似问题