用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - javascript代码库

获得光标在文本框中的位置

2013-06-01 作者: 神马举报

[javascript]代码库

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>js获得光标在文本框中的位置(text/textarea)</title> 
<script type="text/javascript"> 
 function getCursorPosition(obj){
    var evt =window.event?window.event:getTa1CursorPosition.caller.arguments[0];
    var oTa1 = document.getElementById(obj);
    try{
        if(oTa1.value=="") return 0;
        var cursurPosition=-1;
        if(oTa1.selectionStart){//非IE浏览器
            cursurPosition= oTa1.selectionStart;
        }else{//IE

         var rngSel = document.selection.createRange();//建立选择域
         var rngTxt = oTa1.createTextRange();//建立文本域
         var flag = rngSel.getBookmark();//用选择域建立书签
         rngTxt.collapse();//瓦解文本域到开始位,以便使标志位移动
         rngTxt.moveToBookmark(flag);//使文本域移动到书签位
         rngTxt.moveStart('character',-oTa1.value.length);//获得文本域左侧文本
         cursurPosition = rngTxt.text.replace(/\r\n/g,'').length;//替换回车换行符
        }
        return cursurPosition;
    }
    catch(e){
        return oTa1.value.length;
    }
   
}


function getValue(obj){ 
  var pos = getCursorPosition(obj); 
  alert(obj.value.substr(0,pos)+"[输入内容]"+obj.value.substr(pos,obj.value.length)); 
} 
</script> 
</head> 
<body> 
<input type="text" value="HELLO jb51" onmouseup="getValue(this)" style="display:block"> 
<textarea rows="6" cols="60" onmouseup="getValue(this)">jb51 HELLO!</textarea> 
</body> 
</html>


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...