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

225
Visualizações
¿Cómo hacer una animación en javascript/react js?

Estoy tratando de cambiar la opacidad de un elemento cada 100 milisegundos después de un evento de clic. Pero no está funcionando. El change de función se llama después de un evento de clic. Aquí está mi código:

 function change (i) { var o:number = 0; setTimeout( function() { o = o + 0.1; document.querySelector("div.label").style.opacity = o; console.log("o = " + o); }, 100) }

Cuando registro en la consola, el valor de o siempre es 0.1. ¿Qué está mal con este código?

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

0

Debe actualizar el var o con la opacidad actual antes de aumentarlo:

 function change (i) { var o:number = 0; setTimeout( function() { o = document.querySelector("div.label").style.opacity; // <-- ADD THIS o = o + 0.1; document.querySelector("div.label").style.opacity = o; console.log("o = " + o); }, 100) }
about 4 years ago · Juan Pablo Isaza Relatório

0

Estás usando setTimeout() , pero creo que estás buscando el método setInterval() (si quieres que algo se repita).

Probar :

 function change (i) { var o:number = 0; setInterval( function() { o = o + 0.1; document.querySelector("div.label").style.opacity = o; console.log("o = " + o); }, 100) }

TENGA CUIDADO: debe evitar que su variable o vaya más allá de 1 (opacidad máxima). Puede usar clearInterval().

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