Javascript实现获取及设置光标位置的方法
本文实例讲述了Javascript实现获取及设置光标位置的方法。分享给大家供大家参考。具体如下:
在项目开发中经常遇到input等设置光标位置到最后的问题,今天我查了一下Google,找到了在IE、Firefox、Opera等主流浏览器的获取光标位置(getCursortPosition)以及设置光标位置(setCursorPosition)的函数。
1.获取光标位置函数:
functiongetCursortPosition(ctrl){ varCaretPos=0;//IESupport if(document.selection){ ctrl.focus(); varSel=document.selection.createRange(); Sel.moveStart('character',-ctrl.value.length); CaretPos=Sel.text.length; } //Firefoxsupport elseif(ctrl.selectionStart||ctrl.selectionStart=='0') CaretPos=ctrl.selectionStart; return(CaretPos); }
2.设置光标位置函数:
functionsetCaretPosition(ctrl,pos){ if(ctrl.setSelectionRange) { ctrl.focus(); ctrl.setSelectionRange(pos,pos); } elseif(ctrl.createTextRange){ varrange=ctrl.createTextRange(); range.collapse(true); range.moveEnd('character',pos); range.moveStart('character',pos); range.select(); } }
希望本文所述对大家的javascript程序设计有所帮助。