http://www.qianduanheidong.com/blog/article/317665/587ddcad335e52dce6a9/
let scenes = [];// init controllervar controller = new ScrollMagic.Controller(); $('.slide').each(function(index) { var trigger = '#slide-' + index + ' .trigger'; var audio = '#slide-' + index + ' audio'; scenes[index] = new ScrollMagic.Scene({ triggerElement: trigger, triggerHook: 'onCenter', duration: '50%' }) .addIndicators({ name: trigger, colorEnd: "#00FFFF" }) .on('enter', function() { let audio = $('audio') console.log('Playing audio at index', index) audio[index].play(); }) .on('leave', function() { console.log('Leave' + trigger); }) .addTo(controller); });
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script><script src="//cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.6/ScrollMagic.min.js"></script><script src="//cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.6/plugins/debug.addIndicators.min.js"></script><div id="slide-1"> <div></div> <audio src="https://sample-videos.com/audio/mp3/crowd-cheering.mp3" preload="auto"></audio></div><div id="slide-2"> <div></div> <audio src="https://sample-videos.com/audio/mp3/crowd-cheering.mp3" preload="auto"></audio></div><div id="slide-3"> <div></div> <audio src="https://sample-videos.com/audio/mp3/crowd-cheering.mp3" preload="auto"></audio></div>
如果通过 setPin 方法固定某个元素,默认情况下,场景元素下方将出现空白,且随着网页的滚动而被向下推压的场景元
动画开始时, box5 进入(第一次进入)视口 gsap.to(.box2,{scrollTrigger:.box5,//当出现这个dom的时候,.box2会向x移动500px,类似于一
//Notrecommendedx:50%,y:50%,//RecommendedxPercent:50,yPercent:50//Therightmethodx:100,y:300,xPercent:50,yPercent:50 简单使用,相当于页面加载完