Beslis wat nu nodig is, niet wat vroeg in de markup verschijnt
Lazy loading markeert een resource als niet-kritisch totdat deze nodig is. Classificeer op basis van de werkelijke gebruikerstocht: eerst-zicht-essentials, media onder de vouw, optionele embeds en code voor een later route- of paneel. De positie in het CMS is geen voldoende bewijs; een afbeelding kan offscreen zijn in het ene template en centraal in het andere.
Bekijk cold loads op een klein mobiel toestel en een typische desktop. Test ook campagne-links en in-pagina ankers, die een bezoeker verder naar beneden op de pagina kunnen brengen. Die review vertelt je wat klaar moet zijn zonder een scroll-triggered request.
De initiële taak, zichtbare navigatie, belangrijke teksten en de eerste betekenisvolle visual moeten onmiddellijk beschikbaar zijn.
Galerijen onderaan de pagina, kaarten, social embeds, offscreen spelers en code voor niet-gekozen functies zijn gebruikelijke kandidaten.
Bescherm de hero en het initiële viewport
Laad geen content lazy die waarschijnlijk zichtbaar is wanneer de pagina opent. Google waarschuwt hiertegen, en de gefocuste analyse op web.dev laat zien dat lazy-loading van initial-viewport-afbeeldingen LCP kan vertragen. Het LCP-element kan een hero, productafbeelding, poster of tekst zijn; verifieer het op elk belangrijk template in plaats van te raden.
Laad een bevestigd LCP-afbeelding eager. Als testen aantoont dat een kritische afbeelding netwerk-aandacht verliest, test een hoge fetch-priority hint voor die afbeelding. Het is een hint, geen bevel. Een kritische CSS-achtergrondafbeelding heeft mogelijk vroege preload nodig omdat de parser deze niet rechtstreeks kan ontdekken; meet dat geval.
Controleer CMS- en plugin-standaarden op uitgelichte afbeeldingen die onterecht als lazy zijn gemarkeerd op overzichtspagina's.
Gebruik cold mobile- en desktoploads, niet alleen een desktop design preview.
Reserveer ruimte voordat media arriveert
Cumulative Layout Shift (CLS) is onverwachte verschuiving van zichtbare content. Een uitgestelde afbeelding zonder bekende hoogte kan tekst en bedieningselementen verplaatsen nadat een lezer begint te scannen of naar een knop reikt. Dat is een interactierisico, niet slechts een metriekprobleem.
Geef nauwkeurige width- en height-attributen voor afbeeldingen en video, of reserveer de vorm met CSS aspect-ratio. Gebruik een placeholder met het uiteindelijke voetafdruk van het component. Voor een frame van derden reserveer je de hoogte en geef je een duidelijke laad- of niet-beschikbaar-status.
Sla mediagrootte op bij het asset waar mogelijk; een generieke ratio is niet betrouwbaar voor gemengde beeldvormen.
Scroll, filter, open panelen, roteer een mobiel apparaat en gebruik back-navigatie om latere verschuivingen te vinden.
Houd content doorzoekbaar en interacties begrijpelijk
Google Search Central meldt dat Google niet met pagina's interageert door te scrollen of te klikken. Belangrijke lazy-loaded content moet laden wanneer deze zichtbaar wordt, en gerenderde HTML moet verwachte content of media-URL's blootleggen. Inspecteer representatieve pagina's in Search Console na implementatie.
Een indexeerbare infinite list heeft een gepagineerde route nodig voor elk duurzaam stuk: een persistente unieke URL, stabiele content op die URL en links door de reeks. Dit creëert ook een deelbare plaats waar mensen kunnen terugkeren.
Wanneer een actie content onthult, houd de besturing toetsenbord-bewerkbaar en maak het resultaat begrijpelijk. Voor een betekenisvolle niet-focus update zoals 'resultaten geladen', exposeer de status programmatisch zodat hulpmiddelen voor toegankelijkheid het kunnen aankondigen zonder focus te verplaatsen.
Productdetails, artikeltekst, geschiktheidsinformatie en taakinstructies mogen niet pas bestaan na een bezoekersactie.
Stel vereiste checkout- of authenticatiebesturingen niet uit. Laat gekwalificeerde security- en compliance-reviewers betaling, identiteit en third-party-scripts beoordelen.
Gebruik het minst fragiele mechanisme
Voor gewone offscreen-afbeeldingen en iframes is native browser lazy loading meestal het eenvoudigste startpunt. De browser beslist wanneer een near-viewport-aanvraag start; die afstand is geen garantie. Het window load-event kan vuren terwijl lazy-resources nog onvolledig zijn.
Gebruik een Intersection Observer wanneer een benoemd component een aangepaste activatie nodig heeft, zoals het mounten van een duur paneel vlak voordat het verschijnt. Houd de observer smal en start werk vroeg genoeg voor snelle scrolls. Gebruik code-splitting voor niet-initiële routes of optionele features, niet als reden om de huidige taak te vertragen.
Vervang geen eenvoudige source door data-attributen, meerdere scripts en een library tenzij het toegevoegde gedrag een geteste behoefte oplost.
Een optionele embed moet een duidelijke fallback- of weglatingsstatus hebben, geen permanente spinner.
Meet, release en remedieer samen
Vergelijk een baseline en kandidaat op dezelfde URL's, cache-status, viewport en gebruikerspad. Gebruik cold, beperkte mobiele tests plus real-device checks waar mogelijk. Leg LCP, zichtbare sequentie, layoutverschuivingen, mediafouten, gerenderde HTML en essentiële acties vast. Velddata vult labtests aan.
Ship een omkeerbare, template-gescopeerde wijziging. Registreer assets die van eager naar deferred zijn verplaatst, deploymentreferentie, cache-actie, eigenaar en eerste rollback-stap. Als LCP lazy wordt of een conversiepad incompleet raakt, verwijder de regel voor dat kritische asset en verifieer opnieuw. Hercontroleer na thema-, CMS-, image-service-, tag- of embedwijzigingen.
Richt je op het voorkomen en herstellen van een kapotte ervaring, niet op rapportage van de huidige status of alerting.
Draai de instelling terug voor het getroffen template voordat je alle afbeeldingen site-breed terugstelt.
