Posted on 2008-08-26 20:17
leekiang 閱讀(522)
評論(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>