Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

141
Vistas
¿Cómo mover el cursor al final de la línea actualmente activa dentro de un área de texto?

Tenemos un área de textarea y queremos colocar el cursor al final de la línea actualmente activa donde se encuentra el cursor.

Contenido de ejemplo dentro del área de texto:

 This is our first line, then comes a second line, followed by a third line which holds *|* the cursor and a fourth line.

Ahora el cursor parpadeante *|* debería terminar después de la palabra cursor después de la ejecución de la función javascript.

¿Cuál sería el código javascript para hacer esto?


Algunas ideas iniciales:

Para obtener el número de línea se puede utilizar este código:

 let line_number = textarea.value.substr(0, textarea.selectionStart).split("\n").length;

Para repasar todas las líneas del área de texto:

 let lines = textarea.value.split("\n");

Obtener la longitud de la línea actual:

 let end_of_line = lines[line_number-1].length;

Después:

 // set the cursor position to the end of the line textarea.selectionStart = end_of_line;

Parece que no funciona...

¿Tenemos que contar todos los caracteres hasta la línea actual y luego agregarle la longitud de la línea, esto como la nueva posición del cursor?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Esta es la solución que se me ocurrió:

 // line where cursor is now let line_number = textarea.value.substr(0, textarea.selectionStart).split("\n").length; // split all lines of the textarea let contentlines = textarea.value.split("\n"); let charcount = 0; for (var i=0; i < line_number-1; i++) { // count line break as one char charcount += contentlines[i].length + 1; } let end_of_line = contentlines[line_number-1].length; textarea.selectionStart = charcount+end_of_line; textarea.selectionEnd = charcount+end_of_line;

No hay garantía de que sea 100 % correcto y funcione en todos los casos.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda