提供一下思路,代码仅供参考,各浏览器可能有所不同。
关键是要获得当前文档所选区域,再定位光标,如IE 下:
<div contenteditable=true id="divTest">AAAbbb</div>
<script>
var d = document.getElementById('divTest');
function moveEnd(obj){
obj.focus();
var len = obj.innerText.length;
if (document.selection) {
var sel = document.selection.createRange();
sel.moveStart('character',len);
sel.collapse();
sel.select();
}
else{ /* IE11 特殊处理 */
var sel = window.getSelection();
var range = document.createRange();
range.selectNodeContents(obj);
range.collapse(false);
sel.removeAllRanges();
sel.addRange(range);
}
}
moveEnd(d);
</script>