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

345
Visualizações
Mi animación JS restablece su marginTop, pero no su marginLeft

Soy supernuevo en animaciones javascript. Acabo de descubrir cómo agregar el segundo movimiento a mi animación. Cuando se ejecuta la función funk() , la bola baja hacia la derecha. Cuando activa la función funktre() , la pelota va a su posición inicial marginTop pero mantiene su posición marginLeft . ¿Por qué vuelve a la cima? Quiero que la segunda animación, funktre() , mueva la bola desde la posición final de funk() .

 const ball = document.querySelector("#en"); ball.addEventListener("click", funk); function funk() { let id = null; let position = 0; clearInterval(id); id = setInterval(funkto, 5); function funkto() { if (position == 450) { clearInterval(id); funktre(); // sett en ny funksjon her } else { stop(); position++; ball.style.marginLeft = position + "px"; ball.style.marginTop = position + "px"; } } }; function stop() { ball.removeEventListener("click", funk); }; function funktre() { let idd = null; let pos = 0; clearInterval(idd); idd = setInterval(funkfire, 5); function funkfire() { if (pos == 200) { clearInterval(idd); // ny funksjon her } else { pos++; ball.style.marginTop = pos + "px"; } } }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

"Quiero que la segunda animación, funktre, mueva la bola desde la posición final de funk()".

Entonces no deberías inicializar su posición inicial en cero, sino en su posición actual .

 function funktre() { let idd = null; let pos = parseInt(ball.style.marginTop); // set the initial pos to current pos clearInterval(idd); idd = setInterval(funkfire, 5); function funkfire() { if (pos == 200) { clearInterval(idd); // ny funksjon her } else { pos++; ball.style.marginTop = pos + "px"; } } }

Si tiene la intención de programar más animaciones, o incluso un videojuego, sugeriría almacenar la posición superior/izquierda de la bola en una variable global (a la que podría acceder desde cualquier ámbito).

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