现在的位置: 首页 > 综合 > 正文

javascript 光标定位

2018年04月09日 ⁄ 综合 ⁄ 共 2255字 ⁄ 字号 评论关闭

//    /*2光标放在最前面ie中OK,firefox中无效果*/
//    function moveCursor(){
//        var textTest=document.getElementsByName("txtTest");
//        var r=txtTest.createTextRange();
//        r.collapse();
//        r.select();
//    }
   
   
    /*3光标放在最后面ie中OK,firefox中无效果*/
//    function moveCursor(){
//        var textTest=document.getElementsByName("txtTest");
//        var r=txtTest.createTextRange();
//        r.collapse(false);
//        r.select();
//    }

 

 

/*4选取input框中部分内容需要用到Range的moveStart或moveEnd方法,其详细的方法使用可以参考MSDN*/
//function sl(o,m,n){
//    var rt=o.createTextRange();
//    rt.collapse();
//    rt.select();//光标移到最前
//    var r=document.selection.createRange();
//    r.collapse(false);
//    r.moveStart("character",m);//从m位开始
//    r.moveEnd("character",n);//选取n位
//    r.select();
//}
 <input name="a" value="12344563789" />
 <input type="button" value="select" onclick="sl(a,2,4)"/>

 

 

 

/*5光标的移动和位置*/
function setpos(obj,n)
{
    obj.focus();
    var r=document.selection.createRange();
    r.collapse(false);
    r.move("character",n);
    r.select();
   
}

function getpos(obj)//得到文本框内光标的位置
{
    obj.focus();//光标位置不变
    var r=document.selection.createRange();
    r.collapse(false);
    r.setEndPoint("StartToStart",obj.createTextRange());
    alert(r.text.length);
}

 例五
    <input type="button" value="向前" onclick="setpos(a,-1)"/>
    <input type="button" value="向后" onclick="setpos(a,1)"/>
    <input type="button" value="当前光标的位置" onclick="getpos(a)" />

 

 

抱歉!评论已关闭.