div设置contentEditable="true"作为文本编辑器,定位光标解决办法


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);
    }
}

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);
    }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM