Posted on 2008-08-26 20:17
leekiang 阅读(517)
评论(0) 编辑 收藏 所属分类:
web开发
1,在text中按后退键,然后得到光标位置后,光标会移动到text的最前面,为了移动到文本的最后面,
加了4行代码(见注释)。这里并没有彻底搞明白,先立此存照。
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=GBK">
<script src="../pub/jquery/jquery.pack.js"></script>
<script>
function getTextCaretPos(textObj){
var curRange = document.selection.createRange();
var tbRange = textObj.createTextRange();
tbRange.collapse(true);
tbRange.select();
var headRange = document.selection.createRange();
headRange.setEndPoint("EndtoEnd", curRange);
var pos = headRange.text.length;
return pos;
}
jQuery(document).ready(function(){
jQuery('#test').keyup(function(event){
switch(event.keyCode){
case 8:
$('#pos').html(getTextCaretPos($('#test').get(0)));
//以下4行移动光标到文本最后面
$('#test')[0].focus();
var rng =$('#test')[0].createTextRange();
rng.collapse(false);
rng.select();
break;
}
}
);
}
);
</script>
</head>
<body>
<input id='test'>
pos:
<span id='pos'></span>
</body>
</html>