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

353
Vistas
Al seleccionar texto de un párrafo HTML usando window.getSelection(), el valor del índice de rango da 0 cuando se selecciona texto de una etiqueta diferente/secundaria

Estoy intentando seleccionar texto de un párrafo HTML y obtener el rango de índice.

Para obtener los valores de rango, estoy usando el siguiente código

 { startIndex = window.getSelection().getRangeAt(0).startOffset; endIndex = window.getSelection().getRangeAt(0).endOffset; }

A continuación se muestra el párrafo HTML.

 <p>Pellentesque <b>habitant</b> morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p>

Ahora, cuando selecciono la palabra "habitante", startOffset () devuelve 0 como una etiqueta nueva/secundaria iniciada, pero necesito el índice a partir del párrafo

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

0

Devuelve 0 porque el "habitante" de trabajo está envuelto dentro de otro nodo, por lo que el nodo de anclaje no será el párrafo de la sala, será solo el nodo <b>haitant</b> . Puede solucionar esto eliminando la etiqueta <b> .

 <p class="text">Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p>

otra solución será buscar la palabra seleccionada dentro del nodo principal

 <p class="text">Pellentesque <b>habitant</b> morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.</p> const getSelectedTextIndex = () => { const selectedText = window.getSelection().toString() startIndex = document.querySelector('.text').innerText.indexOf(selectedText) endIndex = startIndex + selectedText.length }
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