光标显示控制
2017-12-22 本文已影响0人
蜻蜓路过风
前言: 遇到一个需求:需要在可编辑的div有了内容后点击后光标出现在div的内容后面,'科学查询'了很多方法,最后在StackOverflow上提了问题,并得到了解决,直接看代码吧
function controlCursor(elment) {
var el = elment || $('#myTextarea')[0]; //获取可编辑div元素
if (el.innerText != '') { //此时需做个判断,不然会报错
var textLength = el.lastChild.length;
var range = document.createRange();
var sel = window.getSelection();
range.setStart(el.lastChild, textLength);
range.collapse(true);
sel.removeAllRanges();
sel.addRange(range);
} else { //
el.focus(); //div为空,简单的focus()即可
}
}