我的目标:
能够在'keyup'上添加/修改我的内容可编辑用户输入div中的内容,并能够重新聚焦它以便用户不会被中断。
我的问题:
内容可编辑div无法正确重新聚焦。
我的例子:
答案 0 :(得分:0)
我提出了一个比.focus()方法更有效的解决方案:
$.fn.placeCaretAtEnd = function(){
var el = $(this)[0];
el.focus();
if (typeof window.getSelection != "undefined"
&& typeof document.createRange != "undefined") {
var range = document.createRange();
range.selectNodeContents(el);
range.collapse(false);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
} else if (typeof document.body.createTextRange != "undefined") {
var textRange = document.body.createTextRange();
textRange.moveToElementText(el);
textRange.collapse(false);
textRange.select();
}
}
<强> USAGE:强>
$('#myContenteditable').placeCaretAtEnd();