Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/01/2012, 21:17
IXtremeLT
 
Fecha de Ingreso: julio-2011
Ubicación: Zapopan, Jal. MX
Mensajes: 316
Antigüedad: 12 años, 10 meses
Puntos: 32
Pregunta Cambiar el valor de un TEXTAREA/INPUT sin perder el foco.

Hola que tal,

Creo que me equivoque con el titulo porque lo que se pierde es el puntero no el foco, pero bueno.

Primero que nada les digo que me costo mucho trabajo hacer funcionar el selectionStart/End en IE, descargue una API de jQuery para poder usarlo porque no pude entender el funcionamiento de los metodos de document.createRange(), tales como: getBookmark(), moveToBookmark(), duplicate(), etc. No encontré ningun tuto que explicará como funcionan ese revoltijo de metodos para asimilar el selectionStart/End de Firefox.

Lo que estoy haciendo esque al presionar "enter" en el textarea se agreguen un par de espacios donde está el puntero. Eso ya lo puedo hacer pero lo que sucéde es que al modificar el valor del textarea el puntero se va hasta el final y el scroll se va hasta abajo. Supongo que el scroll se mueve abajo por que el puntero se va abajo.

Pueden comprobarlo con este sencillo ejemplo:

Código HTML:
Ver original
  1. <textarea onkeyup="this.value=this.value+\r\nCAMBIO;" rows="5">
  2. PRUEBA
  3. PRUEBA
  4. PRUEBA
  5. PRUEBA
  6. PRUEBA
  7. PRUEBA
  8. PRUEBA
  9. PRUEBA

Por cierto, el puntero se pierde cuando utilizo onkeydown/up/press y con otros eventos no se pierde. Pero de a fuerzas necesito el onkeypress para insertar los espacios al presionar "enter" o tecnicamente la "key==13".

Gracias