Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

393
Visualizações
Cómo obtener el texto interno, excluyendo los nodos secundarios

Quiero poder agregar etiquetas personalizadas alrededor del texto, así que digamos que tengo:

 <p>Some text <img src="" /> more text </p>

¿Cómo puedo obtener mis etiquetas personalizadas alrededor de 'Algo de texto' y 'más texto'? Las condiciones serán dinámicas, por lo que no puedo codificar para ninguna instancia. También es necesario hacer nodos secundarios, no estoy seguro de si el img en este ejemplo se considera un elemento secundario o no.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Si busca childNodes, puede verificar cada tipo de nodo para ver si es un elemento de Text . Si es así, reemplace esa entrada en el padre con una versión que esté envuelta en su etiqueta. Aquí he elegido <strong> para poner el texto en negrita y mostrar el efecto después del reemplazo.

 const trigger = document.getElementById("trigger"); trigger.addEventListener("click", () => { const parent = document.querySelector("p"); const customTag = "strong"; for (const childNode of parent.childNodes) { if (childNode instanceof Text) { const text = childNode.data; const customElement = document.createElement(customTag); customElement.innerText = text; parent.replaceChild(customElement, childNode); } } });
 <p>Some text <img src="https://www.gravatar.com/avatar/dc3dc4d5e0f2ded6a626771d2f1ae2a6?s=64&d=identicon&r=PG&f=1" /> more text </p> <button id="trigger">Wrap text with tag</button>

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede usar getElementsByTagName o usar la propiedad de los children

 document.getElementsByTagName('p')[0].getElementsByTagName("img");

 document.getElementsByTagName('p')[0].children
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda