<link href="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<section class="container">
<div class="sticky">
<div class="sprite">
</div>
</div>
</section>
<script src="https://unpkg.co/gsap@3/dist/gsap.min.js"></script>
<script src="https://unpkg.com/gsap@3/dist/ScrollTrigger.min.js"></script>
<script>
const sprite = document.querySelector('.sprite');
const spriteWidth = 150;
const frameCount = 60;
const tl = gsap.timeline({
repeat: 3,
});
for (let i = 0; i < frameCount; i++) {
const xPos = -i * spriteWidth;
tl.to(sprite, {
backgroundPosition: `${xPos}px 50%`,
ease: 'steps(1)',
});
}
ScrollTrigger.create({
trigger: '.container',