HTML Academy · Les

IntersectionObserver API en drempelwaarden

Maak observers en configureer zichtbaarheidsdrempels

Les 1 van 413 stappen

IntersectionObserver API en drempelwaarden is een gratis HTML Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject HTML Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus HTML Academy bevat in totaal 4 lessen.

Wat IntersectionObserver doet

IntersectionObserver roept callbacks aan wanneer een element de viewport (of een andere scrollcontainer) binnenkomt of verlaat. Het is het moderne, performante alternatief voor scrolllisteners — de browser doet het rekenwerk en je code wordt alleen uitgevoerd bij echte overgangen in zichtbaarheid.

Aanmaken

new IntersectionObserver(callback, options) maakt een observer aan. De callback ontvangt een array met entries wanneer intersecties veranderen; met opties stel je in welke container wordt geobserveerd en bij welke drempelwaarden.

const observer = new IntersectionObserver((entries) => {
  for (const entry of entries) {
    if (entry.isIntersecting) {
      console.log("Visible:", entry.target);
    }
  }
});
observer.observe(document.querySelector(".hero"));

De IntersectionObserverEntry

Elke entry heeft target (het geobserveerde element), isIntersecting (boolean), intersectionRatio (0 tot 1), boundingClientRect, intersectionRect en time. Gebruik isIntersecting voor controles op zichtbaarheid als aan/uit; gebruik intersectionRatio voor logica op basis van het zichtbare percentage.

De optie threshold

{ threshold: 0.5 } roept de callback aan telkens wanneer de intersectieverhouding de grens van 50% overschrijdt. Gebruik een array [0, 0.25, 0.5, 0.75, 1] om bij elk kwart te reageren — handig voor voortgangsindicatoren of analyses die "% zichtbaar" rapporteren.

De optie root

Standaard meet de observer de intersectie met de viewport. Stel root: someScrollableDiv in om te meten ten opzichte van een interne scrollcontainer — bijvoorbeeld een gevirtualiseerde lijst in een div met vaste hoogte.

De optie rootMargin

rootMargin: "200px" vergroot het observatiegebied aan elke kant met 200 pixels. Gebruik dit om eerder te reageren (begin 200px voordat afbeeldingen de viewport binnenkomen met laden) of later (reageer pas wanneer ze volledig buiten de viewport zijn).

new IntersectionObserver(callback, {
  rootMargin: "0px 0px 200px 0px",
  threshold: 0
});

observe en unobserve

observer.observe(element) begint een element te observeren; observer.unobserve(element) stopt daarmee. Voer unobserve altijd uit wanneer je de callback niet meer nodig hebt (bijvoorbeeld nadat uitgesteld laden één keer is geactiveerd), zodat geheugen wordt vrijgemaakt.

disconnect

observer.disconnect() stopt het observeren van alle geobserveerde elementen. Roep dit aan wanneer de component wordt ontkoppeld of de observer niet meer nodig is — zo voorkom je lekken door observers die langer blijven bestaan dan hun toepassing.

Asynchrone levering

Callbacks worden asynchroon en gebundeld geleverd — veel intersectiewijzigingen tijdens snel scrollen leiden tot één callback met alle entries, niet tot één per element. Dat levert een grote prestatiewinst op ten opzichte van scrolllisteners die bij elke scrollgebeurtenis worden uitgevoerd.

De eerste callback wordt direct aangeroepen

Wanneer je een nieuw element observeert, wordt de callback bijna onmiddellijk één keer aangeroepen met de huidige status — handig voor elementen die al zichtbaar zijn wanneer het observeren begint, zonder afzonderlijk initialisatiepad.

Veelvoorkomende toepassingen

Afbeeldingen uitgesteld laden, animaties activeren wanneer ze tijdens het scrollen in beeld komen, oneindig scrollen (observeer een sentinel bij het einde van de lijst), bijhouden welke artikelen een gebruiker daadwerkelijk heeft gelezen, en een vastgezette koptekst omschakelen op basis van de zichtbaarheid van de hoofdbanner.

Kennistoets

Wat is het verschil tussen threshold: 0 en threshold: 1 in een IntersectionObserver?

Samenvatting

IntersectionObserver roept callbacks aan bij overgangen in de zichtbaarheid van elementen en biedt ingebouwde prestaties en bundeling — vervang scrolllisteners hiermee voor zichtbaarheidslogica. Configureer de observer met threshold (0 tot 1, of een array), root (aangepaste scrollcontainer) en rootMargin (vergroot of verklein het geobserveerde gebied). Gebruik observe/unobserve voor afzonderlijke elementen; disconnect ruimt alles op.

Gratis beginnen

Leer HTML met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
40
Lessen
159

Veelgestelde vragen

Is de les “IntersectionObserver API en drempelwaarden” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad HTML Academy, waaronder “IntersectionObserver API en drempelwaarden”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus HTML Academy bevat in totaal 4 lessen.

Wat leer ik in “IntersectionObserver API en drempelwaarden”?

Maak observers en configureer zichtbaarheidsdrempels Je oefent met HTML Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met HTML Academy te beginnen?

Ervaring vooraf is niet nodig. HTML Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.

Hoe lang duurt de les “IntersectionObserver API en drempelwaarden”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over HTML Academy?

Ja. Elke les over HTML Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. IntersectionObserver API en drempelwaarden
  2. Lazy loading met IntersectionObserver
  3. Infinite scroll implementeren
  4. Scrollgekoppelde animaties instellen
← Terug naar HTML Academy