Foros del Web » Programando para Internet » Javascript »

Posicion del cursor en un campo de texto

Estas en el tema de Posicion del cursor en un campo de texto en el foro de Javascript en Foros del Web. Buenas, tengo una dudilla, cuando hacemos un focus() sobre un objeto el cursor se posiciona en ese objeto, preo mi duda es ... si queremos ...
  #1 (permalink)  
Antiguo 09/07/2004, 00:38
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 5 meses
Puntos: 5
Posicion del cursor en un campo de texto

Buenas, tengo una dudilla, cuando hacemos un focus() sobre un objeto el cursor se posiciona en ese objeto, preo mi duda es ... si queremos posicionar el cursor en una posicion determinada de ese campo de texto como lo podriamos hacer?

Muchas gracias
__________________
Usuario registrado de Linux #288725
  #2 (permalink)  
Antiguo 09/07/2004, 01:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
hola epplestun:

Recuerdo que intenté hacer algo parecido pero en explorer no lo logré...
En Mozilla es fácil: igualas los atributos seletionStart y selectionEnd del campo de texto a la posición que quiereas

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 09/07/2004, 03:39
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 5 meses
Puntos: 5
Ami en mozilla me funciona bien sin hacer nada, son algo mas inteligentes que la gente de IE jeje y ponen el focus al final del campo si tiene algun valor ... pero vaya ... algo ya haremos

Gracias por todo jeje siempre estas aqui dando el callo eh
__________________
Usuario registrado de Linux #288725
  #4 (permalink)  
Antiguo 13/07/2004, 09:09
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 5 meses
Puntos: 317
Hola todos:

caricatos : estuve así de cerca de postear una respuesta para ese tema, pero me di cuenta justo a tiempo de que mi método sólo funcionaba bajo condiciones de laboratorio; en campo hay situaciones donde no sirve. Un papelón.

epplestun : ésto no será muy ortodoxo, pero si estás muuuy desesperado, es mejor que nada.

Código:
<html>
<head>
<script>

function poneCursor(){
	cadena=formulario.texto.value.toString();
	com=0;
	pos=5; /*POSICIÓN DEL CURSOR*/
	fin=cadena.length;
	alfa=cadena.slice(com,pos);
	zulu=cadena.slice(pos,fin);
	formulario.texto.focus();
	formulario.texto.value=alfa;
	formulario.texto.select();
	document.execCommand('copy');
	formulario.texto.value=zulu;
	formulario.texto.focus();
	document.execCommand('paste');
}

</script>
<style>
</style>
</head>
<body>

<form name="formulario">
<input value="0123456789" id="texto" name="texto">
<br />
<input type="button" value="Cursor en caracter 5" onclick="poneCursor()">
</form>

</body>
</html>
Hay formas màs serias de hacerlo, p.e. con window.clipboardData , pero son para IE5.5 y aún hay mucha gente con la versión anterior.
El bug más grave se da en el caso de que alguien copie un texto y luego ubique el cursor para pegarlo en el INPUT, porque va a acordarse de todos tus ancestros al menos por tres generaciones; pero como ya dije, es una 'solución desesperada'.

saludos

furoya
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:44.