Tengo una función que se inicia después de 1 segundo desde la carga de la página, durante la fase de desarrollo funciona localmente, pero cuando construyo mi aplicación y la coloco en un servidor, el tiempo de espera ya no funciona (en Chrome solo funciona después de aceptar el banner de cookies y recargado la página), mientras que si entro en modo incógnito no funciona.
Este es el código de tiempo de espera:
window.setTimeout(() => { this.brake(); },1000);Esta es una aplicación vue.js.
Traté de modificar la función insertando este código:
document.addEventListener('DOMContentLoaded', function() { window.setTimeout(() => { this.brake(); },1000); }, false);pero sigue sin funcionar.
El enlace del sitio de prueba es: https://new.carbobrake.com/
Una vez que la página haya terminado de cargarse, el disco debería detenerse por sí mismo, pero esto no sucede.
----EDITAR----
Este es mi código:
<div id="animation-container"> <img id="fixed-canvas-container" :src="this.homeImages[0]" alt="" /> <img id="scroll-canvas-container" :src="this.animationImages[0]" alt="" /> <div id="step0"> // other code </div> </div>JavaScript:
methods: { brake() { this.canvasContainer = document.getElementById("fixed-canvas-container"); this.canvasContainer.src = this.homeImages[1]; setTimeout(() => { document.body.style.overflowY = "visible"; this.setImageMargin(); document.getElementById("scroll-canvas-container").style.display = "block"; var step0 = document.getElementById("step0"); TweenMax.fromTo( step0, 0.5, { display: "none", opacity: 0, }, { display: "block", opacity: 1, ease: Power3.easeIn, } ); }, 1100); // TODO check setTimeout(() => { this.canvasContainer.style.display = "none"; },2500); } }, mounted() { window.setTimeout(() => { this.brake(); }, 1000); }Lo resolví así:
window.addEventListener('load', this.brake);Ahora funciona correctamente al final de la carga de la página.