您的位置:首页 > Web前端 > JavaScript

在javascript中如何获得textbox输入光标的位置

2014-06-05 13:24 302 查看
</pre><pre name="code" class="javascript"><script language="javascript">
function onkeydownHandler()
{
    var tb = document.getElementById("tbName");
    var cursorIndex = GetCursorIndexOfTextBox(tb);
    alert("此时光标的index是 "+cursorIndex);
    
}

function GetCursorIndexOfTextBox(obj)
{
    obj.focus();//textbox获取焦点
    var workRange = document.selection.createRange();//根据选中的文本区创建一个workRange
    var workRange_copy = document.selection.createRange();//根据选中的文本区再创建一个workRange,用于备份textbox的初始状态,便于恢复初始状态
    obj.select();//textbox的全部文本被选中
    var allRange = document.selection.createRange();//allRange表示全部文本区
    workRange.setEndPoint("StartToStart",allRange);//将workRange的开始点移到allRange的开始点
    var cursorposition = workRange.text.length;//获取此时的workRange的Text的长度,即为光标所在文本中的Index
    workRange.collapse(false);//将workRange的插入点移到workRange的结尾处
    workRange_copy.select();//恢复textbox原先的状态
    return cursorposition;    //返回光标所在文本的index(从0开始)
}

</script>


原文链接: http://blog.csdn.net/gct/article/details/2306995?reload
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: