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

61
Vistas
cómo agregar estilo CSS por javascript

Soy nuevo en javascript. intente cambiar el estilo CSS por javascript. Me gustaría agregar el estilo para la etiqueta a debajo de la etiqueta p específica (.font_8), y la etiqueta a ya tiene algo de estilo.

el estilo que trato de hacer es este, pero me gustaría agregar el estilo por javascript.

 <style> .font_8 a { text-decoration: none; color: red; border-bottom: 2px dotted currentColor; } .font_8 a:hover { border-bottom: 2px solid currentColor; } </style> <p class="font_8" style="font-size:16px">text text text text<br> <span style="text-decoration:underline"><a href="URL-link" target="_blank" rel="noreferrer noopener">link link link</a></span>(text) </p> <script> function getElements(){ var font_8 = document.getElementsByClassName('font_8'); var elements = font_8.getElementsByTagName('a'); var len = elements.length; for (var i = 0; i < len; i++){ elements[i].style = { textDecoration: 'none', color: 'red', borderBottom: '2px dotted currentColor', } } } function getElements(){ var font_8 = document.getElementsByClassName('font_8'); var elements = font_8.getElementsByTagName('a'); var len = elements.length; for (var i = 0; i < len; i++){ elements[i].addEventListener('mouseover', function() { elements[i].style.borderBottom= '2px solid currentColor'; } ) } } </script>
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

No creo que esto sea necesariamente lo que buscas. Pero obtuve el detector de eventos agregando la línea roja debajo de la etiqueta p y también agrega los estilos constantes. No sabía si estaba tratando de agregarlo a font_8 oa la etiqueta ya que estaba obteniendo ambos antes de cada bucle.

También agregué un evento mouseout para deshacerme de la línea continua.

 const styles = { textDecoration: 'none', color: 'red', borderBottom: '2px dotted currentColor', } function getElements() { var elements = document.getElementsByClassName('font_8'); var len = elements.length; for (let i = 0; i < len; i++) { Object.keys(styles).forEach((key)=>{ elements[i].style[key]=styles[key] }) } for (let i = 0; i < len; i++){ elements[i].addEventListener('mouseover', function() { elements[i].style.borderBottom= '2px solid currentColor'; }) elements[i].addEventListener('mouseout', function() { Object.keys(styles).forEach((key)=>{ elements[i].style[key]=styles[key] }) }) } } getElements()
 <p class="font_8" style="font-size:16px">text text text text <br> <span style="text-decoration:underline"> <a href="URL-link" target="_blank" rel="noreferrer noopener">link link link</a> </span> (text) </p>

Sin embargo, no sabía si querías recuperar el punteado o no. Si no desea recuperar la línea punteada, puede usar el método Object.keys y ponerlo en la función mouseout como:

 elements[i].addEventListener('mouseout', function() { elements[i].style.borderBottom= ''; })
about 4 years ago · Juan Pablo Isaza Denunciar

0

Debe reemplazar todos sus len[i] con elements[i] (la variable len almacena un número, la variable de elements almacena una lista).

En la línea 14 , debería ser un = creo (si desea actualizar el estilo del element[i] ):

 for (var i = 0; i < len; i++) { elements[i].style = { textDecoration: 'none', color: 'red', borderBottom: '2px dotted currentColor', } }

Y falta un corchete de cierre en la línea 27-28 (para cerrar el ciclo for ).

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