這篇文章主要介紹了Javascript實現獲取及設置光標位置的方法,涉及javascript針對頁面光標位置的相關操作技巧,具有良好的兼容性,非常簡單實用,需要的朋友可以參考下
本文實例講述了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程序設計有所幫助。
新聞熱點
疑難解答
圖片精選