本文實例講述了Javascript實作取得及設定遊標位置的方法。分享給大家供大家參考。具體如下:
在專案開發中經常遇到input等設定遊標位置到最後的問題,今天我查了一下Google,找到了在IE、Firefox、Opera等主流瀏覽器的獲取遊標位置(getCursortPosition)以及設定遊標位置(setCursorPosition)的函數。
1. 取得遊標位置函數:
function getCursortPosition (ctrl) { var CaretPos = 0; // IE Support if (document.selection) { ctrl.focus (); var Sel = document.selection.createRange (); Sel.moveStart ('character', -ctrl.value.length); CaretPos = Sel.text.length; } // Firefox support else if (ctrl.selectionStart || ctrl.selectionStart == '0') CaretPos = ctrl.selectionStart; return (CaretPos); }
2. 設定遊標位置函數:
function setCaretPosition(ctrl, pos){ if(ctrl.setSelectionRange) { ctrl.focus(); ctrl.setSelectionRange(pos,pos); } else if (ctrl.createTextRange) { var range = ctrl.createTextRange(); range.collapse(true); range.moveEnd('character', pos); range.moveStart('character', pos); range.select(); } }
希望本文所述對大家的javascript程式設計有所幫助。