在撰写文本时,jQuery
脚本会不时尝试替换某些单词。
该文字写在div
标记内content editable set on true
。
我如何focus the cursor
在父母跨度之前的最后一个孩子的end
处?
<div id="cl-edit-outline-title_AtD_div" contenteditable="true">
<span class="mceItemHidden">
<span class="hiddenSpellError" pre="">fgsddfsdfgdsfgsd</span>
<span class="hiddenSpellError" pre="a">a</span>
<span class="hiddenSpellError" pre="b">b</span>
<span class="hiddenSpellError" pre="c">c</span>
<span class="hiddenSpellError" pre="d">d</span>
</span>
</div>
我在网上搜索了解决方案,但没有找到。
答案 0 :(得分:0)
$.fn.focusEnd = function() {
$(this).focus();
var tmp = $('<span />').appendTo($(this)),
node = tmp.get(0),
range = null,
sel = null;
if (document.selection) {
range = document.body.createTextRange();
range.moveToElementText(node);
range.select();
} else if (window.getSelection) {
range = document.createRange();
range.selectNode(node);
sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
}
tmp.remove();
return this;
}
致电... $('.yourClassDiv').focusEnd();
享受..;)