Technology /
Insights
Our Smooth Scrolling Libraries.
Waarom een scroll library gebruiken?
Scroll-bibliotheken kunnen om verschillende redenen worden gebruikt. De meest voor de hand liggende is het creëren van een soepelere scrollervaring, wat helpt om het schokkerige gevoel te verminderen dat sommige muizen geven tijdens het scrollen. Browsers voegen soms hun eigen scroll-effecten toe, dus een scrollbibliotheek zorgt voor consistentie op alle apparaten.
Daarnaast bieden scrollbibliotheken de mogelijkheid om het scrollgedrag en de snelheid van bepaalde elementen aan te passen, wat subtiele animaties mogelijk maakt, afhankelijk van de gebruikte bibliotheek.
We gaan drie bibliotheken vergelijken in deze post:
Locomotive Scroll ontwikkeld door de Locomotive Agency.
GSAP ScrollSmoother ontwikkeld door Greensock.
Lenis Scroll ontwikkeld door Studio Freight.
Locomotive scroll
Een belangrijk onderscheid tussen deze bibliotheken is hun werking. Locomotive Scroll creëert een vaste container rond de body en verplaatst de body door middel van CSS-transformaties. Dit zorgt voor maatwerk in scrollgedrag, maar schakelt native scrollen uit, wat kan conflicteren met elementen zoals sticky onderdelen of animatiebibliotheken zoals GSAP ScrollTrigger. Hoewel het een open source-project is van 12,33 KB, kunnen extra pakketten, zoals react-locomotive-scroll, de totale bestandsgrootte vergroten wanneer gebruikt in frameworks zoals React.
'Locomotive Scroll' wordt gebruikt op de campagnewebsite voor het Strategisch Concept 2022 van de NAVO.
Voordelen en nadelen:
Geen native scrollbar
CSS sticky werkt niet goed
Open source
Geïntegreerd animatiesysteem
12,33 KB
Als je tevreden bent met de ingebouwde animatie-opties, is deze bibliotheek een goede keuze. Maar als je op zoek bent naar een robuustere bibliotheek met meer geavanceerde animatiemogelijkheden, zou de volgende optie wellicht beter passen.
GSAP ScrollSmoother
Een van de belangrijkste problemen met Locomotive Scroll is dat het niet goed samenwerkt met andere animatiebibliotheken. GSAP ScrollSmoother lost dit probleem op. GreenSock (GSAP) is een uitgebreide bibliotheek voor het maken van animaties op websites, en ScrollSmoother is slechts een klein onderdeel ervan.
Een groot voordeel van GSAP ScrollSmoother is dat het uitstekend werkt met de volledige GSAP-animatiecollectie. Net als Locomotive Scroll maakt het gebruik van data-attributen om scrollsnelheid en vertraging aan te passen, wat zorgt voor een hoge mate van aanpasbaarheid.
Zoals je kunt zien, biedt ScrollSmoother minder ingebouwde animatie-opties dan Locomotive Scroll, maar dat is met opzet.
Andere animaties kunnen gemakkelijk worden toegevoegd met andere GSAP-bibliotheken, wat het een veelzijdiger hulpmiddel maakt zonder grote compromissen. Het gebruikt native scroll, waardoor je geen "neppe" scrollbar creëert.
Houd er echter rekening mee dat GSAP niet open-source is en een commerciële licentie vereist. Een nadeel is dat ScrollSmoother relatief groot is (26,08 KB) als je alleen een basis smooth-effect nodig hebt.
Als je dus op zoek bent naar een volledig systeem dat de meeste animaties aankan, is GSAP wat je zoekt. Echter, als je website geen uitgebreide animatieopties nodig heeft en je alleen een eenvoudige, lichte bibliotheek wilt voor een soepelere scrollervaring, dan is Lenis Scroll misschien een betere keuze.
Lenis
Lenis is, net als Locomotive Scroll, open source en ontwikkeld door Studio Freight. Als je op zoek bent naar een eenvoudige, lichte scrollbibliotheek zonder de complicaties van CSS-workarounds zoals transform- of sticky-posities, vult Lenis dat gat. Het is zeer klein (2,13 KB) en richt zich uitsluitend op scrollen. Dit biedt voordelen zoals de mogelijkheid om aangepaste easing te creëren en de optie voor oneindig scrollen (je wordt terug naar boven gestuurd als je de onderkant van de pagina bereikt).
Dit alles maakt Lenis een zeer gebruiksvriendelijke bibliotheek, maar het belangrijkste verkoopargument is dat het niets in de weg zit. Dit betekent dat als je later in het project besluit om wat GSAP-animaties of een andere animatiebibliotheek toe te voegen, je weet dat het scrollen van de pagina geen probleem zal zijn.
Zoals je in het voorbeeld kunt zien, heeft Lenis veel minder opties voor aanpassing. Maar soms is minder meer. Wanneer je naar de HTML kijkt, zie je dat er geen data-attributen of iets dergelijks zijn toegevoegd en de enige dingen die we hebben toegevoegd zijn de id's om de doelwit-divs toe te voegen.
Er zijn veel verschillende opties voor het creëren van aangepaste scroll-animaties op websites, en elke bibliotheek die we hebben besproken - Locomotive-scroll, GSAP SmoothScroller en Lenis Scroll - heeft zijn eigen unieke sterke punten en mogelijkheden.
Locomotive-scroll is een krachtige en flexibele bibliotheek die een breed scala aan aanpassingsopties biedt, waarmee ontwikkelaars complexe en boeiende scroll-animaties met gemak kunnen maken. GSAP SmoothScroller is een flexibele bibliotheek die geoptimaliseerd is om perfect te functioneren in de GSAP-animatieomgeving, waardoor het ideaal is voor het maken van complexe animaties, zelfs op low-end apparaten. Lenis Scroll, aan de andere kant, is een eenvoudige en lichte bibliotheek die een gebruiksvriendelijke manier biedt om aangepaste scroll-animaties te maken, zonder concessies te doen aan prestaties of functionaliteit.
Uiteindelijk zal de keuze tussen deze bibliotheken afhangen van de specifieke behoeften van jouw project. Als je op zoek bent naar een flexibele en aanpasbare oplossing, is Locomotive-scroll wellicht de beste keuze. Als animatie jouw topprioriteit is, is GSAP SmoothScroller de juiste keuze. En als je op zoek bent naar een eenvoudige en gebruiksvriendelijke oplossing, is Lenis Scroll de perfecte keuze.
Welke bibliotheek je ook kiest, het belangrijkste is om degene te selecteren die het beste aan jouw behoeften voldoet en je helpt om de aangepaste scroll-animaties te creëren die je voor je website voor ogen hebt. Dus, of je nu een ervaren webontwikkelaar bent of net begint, probeer een van deze bibliotheken uit en zie de magie van aangepaste scroll-animaties tot leven komen!
03 / 10 / 2023