js設(shè)置光標(biāo)位置

字號(hào):


    function getCaret(textbox)
    {
    var control = document.activeElement;
    textbox.focus();
    var rang = document.selection.createRange();
    rang.setEndPoint("StartToStart",textbox.createTextRange())
    control.focus();
    return rang.text.length;
    }
    function setCaret(textbox,pos)
    {
    try
    {
    var r =textbox.createTextRange();
    r.moveStart('character',pos);
    r.collapse(true);
    r.select();
    }
    catch(e)
    {}
    }
    function selectLength(textbox,start,len)
    {
    try
    {
    var r =textbox.createTextRange();
    r.moveEnd('character',len-(textbox.value.length-start));
    r.moveStart('character',start);
    r.select();
    }
    catch(e)
    {//alert(e.description)}
    }
    function insertAtCaret(textbox,text)
    {
    textbox.focus();
    document.selection.createRange().text = text;
    }