问题描述
我正在尝试为用户将离开的页面制作动画,因此我使用此代码延迟滚动到下一页,以便动画在更改页面之前工作,问题是用户只需滚动一次并等待动画和页面发生变化,当我继续滚动(使用鼠标滚轮或触摸板)时,动画循环且永不改变,您可以看到我创建的代码笔,不要停止滚动以了解是什么问题。
-
离开第二页时制作动画是什么,所以当你在第二页向下滚动动画开始时,页面改变了。
-
现在发生的情况是,当您现在滚动时,动画会一直循环直到停止滚动,这是一种糟糕的用户体验。
<body> <nav id="nav"> </nav> <div id="fullpage"> <div id="sec-1" class="section"> <h4 class="ast-presint">ASTALIFT Presint</h4> <h1 class="title">White Jelly Aquarvsta</h1> </div> <div id="sec-2" class="section"> <img class="image-1" src="https://lh3.googleusercontent.com/proxy/vxPO4c9WyeUtBlFX0WXRzle0jUXY1yOR-YvO9evFDlWkIC2ikeUHJcQ97Xao4GGtikiAPa0MWrAuufl1ayJRWCW69K0pQLNCOo6BaVajcDJIS1ovyVMzoWaC-H_690Ho6WpGIk2tA5kU4iYhDm-pVkF001RktHHwyzsDMOnxaWC5XkJyUg" alt=""> <img class="image-2" src="https://lh3.googleusercontent.com/proxy/vxPO4c9WyeUtBlFX0WXRzle0jUXY1yOR-YvO9evFDlWkIC2ikeUHJcQ97Xao4GGtikiAPa0MWrAuufl1ayJRWCW69K0pQLNCOo6BaVajcDJIS1ovyVMzoWaC-H_690Ho6WpGIk2tA5kU4iYhDm-pVkF001RktHHwyzsDMOnxaWC5XkJyUg" alt=""> <img class="image-3" src="https://lh3.googleusercontent.com/proxy/vxPO4c9WyeUtBlFX0WXRzle0jUXY1yOR-YvO9evFDlWkIC2ikeUHJcQ97Xao4GGtikiAPa0MWrAuufl1ayJRWCW69K0pQLNCOo6BaVajcDJIS1ovyVMzoWaC-H_690Ho6WpGIk2tA5kU4iYhDm-pVkF001RktHHwyzsDMOnxaWC5XkJyUg" alt=""> <h1 class="title-2">Unveil Your skin's Radiance</h1> <h5>Lorem ipsum dolor sit amet consectetur adipisicing elit.</h5> </div> <div id="sec-1" class="section">Some section</div> <div id="sec-1" class="section">Some section</div> </div> <script> var delay = 1000; //milliseconds var timeoutId; var animationIsFinished = false; /* Slide variable */ var slideIndexBis = 1; var sliding = false; new fullpage('#fullpage',{ fadingEffect:true,fadingEffect:'slides',onLeave: function(origin,destination,direction){ const section = origin.index; tl = new TimelineMax({delay:0.7}); if (section === 1){ var curTime = new Date().getTime(); //animating my element tl.fromTo($('.title-2'),0.8,{scale: 1},{scale: 100,ease: Power1.easeIn,opacity:0}) tl.fromTo($('.image-1'),0.2,{x: 0},{x: "100%",ease: Power1.easeIn}) tl.fromTo($('.image-2'),{x: "100%"}) tl.fromTo($('.image-3'),{y: 0},{y: "100%"}) clearTimeout(timeoutId); timeoutId = setTimeout(function(){ animationIsFinished = true; fullpage_api.moveto(destination.index + 1); },delay); return animationIsFinished; } },
});
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)