比如你会在div中插入表情,也可能输入文字,这时候,你可能需要定位光标的位置,默认不处理的情况下,div的光标是定位在文字后面,而你插入一个img标签,光标是不会跟随移动的!解决办法:
function set_focus(el) { el = el[0]; // jquery 对象转dom对象 el.focus(); if ($.browser.msie) { var rng; el.focus(); rng = document.selection.createRange(); rng.moveStart(\'character\', -el.innerText.length); var text = rng.text; for (var i = 0; i < el.innerText.length; i++) { if (el.innerText.substring(0, i + 1) == text.substring(text.length - i - 1, text.length)) { result = i + 1; } } } else { var range = document.createRange(); range.selectNodeContents(el); range.collapse(false); var sel = window.getSelection(); sel.removeAllRanges(); sel.addRange(range); } }
转自:http://blog.csdn.net/chiwenheng2078/article/details/48158215