JS解决contenteditable=“true“的光标位置放到最后
JS解决contenteditable="true"的光标位置放到最后
元素设置可编辑后,光标输入时候位置有问题处理。网搜了下能用,记录下。劝大家还是尽量用input这种标签编辑体验好一些,也省了一些问题
function keepLastIndex(obj) {
if (window.getSelection) {//ie11 10 9 ff safari
obj.focus(); //解决ff不获取焦点无法定位问题
var range = window.getSelection();//创建range
range.selectAllChildren(obj);//range 选择obj下所有子内容
range.collapseToEnd();//光标移至最后
}
else if (document.selection) {//ie10 9 8 7 6 5
var range = document.selection.createRange();//创建选择对象
//var range = document.body.createTextRange();
range.moveToElementText(obj);//range定位到obj
range.collapse(false);//光标移至最后
range.select();
}
}
keepLastIndex(document.getElementById("div"))