您的位置:首页 > 产品设计 > UI/UE

用div的contenteditable = true做文本编辑器 光标的设置方法

2017-11-20 23:06 399 查看
用div的contenteditable = true做文本编辑器的方法

function set_focus(el) {  

el=el[0];  // jquery 对象转dom对象  
el.focus();  
if($.browser.msie){  

//上面是ie的写法
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 getC(that){  

//that 为dom对象    

            if(document.all){  

                that.range=document.selection.createRange();  

                that.range.select();  

                that.range.moveStart("character",-1);   

            }else{  

                that.range=window.getSelection().getRangeAt(0);  

                that.range.setStart(that.range.startContainer,2);  

            }  

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: