将可编辑div作为聊天输入框,插入表情时,光标始终在表情前面,于是在网上找了一些代码,现总结如下:
<div id="message_text" contenteditable="true"></div>
可编辑div
function Focus() {
// 始终聚焦在文本末尾
el=document.getElementById('message_text');
//el=el[0]; //jquery 对象转dom对象
el.focus();
if($.support.msie){
var range = document.selection.createRange();
this.last = range;
range.moveToElementText(el);
range.select();
document.selection.empty(); //取消选中
} else {
var range = document.createRange();
range.selectNodeContents(el);
range.collapse(false);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
}
}
调用此方法,可以使光标始终定位在文本末尾
参考地址:http://chwjbn.blog.163.com/blog/static/1038799201310762620681/