Hola a todos:
Hoy les comparto algo que apenas descubrí en elementos html.
Poner el foco en una determinada posición de un campo de texto... Es decir
Si tengo un campo de texto y si se escribe un texto en este elemento, se puede mover el foco a una posición de letras...
Realizando lo siguiente:
//Funcion para recuperar la posición
function obtenerPosicionCursor(idElemento) {
var campo = document.getElementById(idElemento);
if (document.selection) {// Soporte IE
campo.focus(); // Poner foco en elemento
var oSel = document.selection.createRange(); // Para obtener posición del cursor
oSel.moveStart('character', -elemento.value.length); //Mover cursor a posicion 0
campo.selectionEnd = oSel.text.length; /
oSel.setEndPoint('EndToStart', document.selection.createRange() );
elemento.selectionStart = oSel.text.length;
}
return { start: elemento.selectionStart, end: elemento.selectionEnd };
}
//Función para establecer la posición
function establerCursorPosicion(pos, idElemento){
var elemento = document.getElementById(idElemento);
if(typeof document.selection != 'undefined' && document.selection){ //método IE
var tex=elemento.value;
elemento.value='';
elemento.focus();
var str = document.selection.createRange();
elemento.value=tex;
str.move("character", pos);
str.moveEnd("character", 0);
str.select();
}
else if(typeof elemento.selectionStart != 'undefined'){ //método estándar
elemento.setSelectionRange(pos,pos);
}
}
No hay comentarios:
Publicar un comentario