Hoe JavaScript-code uitvoeren na het laden van een pagina met behulp van pure JS en jQuery

In dit bericht bekijken we hoe we JavaScript-code uitvoeren na het laden van een pagina met behulp van pure JS en jQuery.

JavaScript en de jQuery-bibliotheek bieden verschillende manieren om een functie uit te voeren nadat het DOM klaar is. Dit bericht geeft een gedetailleerd overzicht van methoden om dit te bereiken.

JavaScript

In zuiver JavaScript is de standaardmethode om een volledig geladen pagina te detecteren, het gebruik van de onload event handler eigenschap. Het load event geeft aan dat alle assets op de webpagina zijn geladen. Dit kan worden aangeroepen met de window.onload in JavaScript.

1
2
3

window.onload = function() {
alert(‘Pagina is geladen’);
};

Edit in JSFiddle

De volgende code gebruikt de addEventListener()-methode om te luisteren naar de load-gebeurtenis om een volledig geladen pagina te detecteren. Dit is gelijkwaardig aan de bovenstaande code.

1
2
3

window.addEventListener(“load”, function() {
alert(‘Pagina is geladen’);
});

Edit in JSFiddle

Hoewel niet aanbevolen, kunt u ook een JavaScript-functie bij het laden van de pagina oproepen met behulp van HTML <body>-tag. Het idee is om onload attribuut in de body tag te gebruiken.

1
2
3
4
5
6
7
8
9
10
11

<html>
<body onload=”loaded();” ></body>
<script>
functie geladen() {
alert(‘Pagina is geladen’);
}
</script>
</html>

Edit in JSFiddle

Merk op dat het DOMContentLoaded-event geschikter zou zijn als u alleen uw code wilt uitvoeren wanneer het DOM volledig is geladen, zonder te wachten tot stylesheets en afbeeldingen klaar zijn met laden.

1
2
3

document.addEventListener(“DOMContentLoaded”, function() {
alert(‘Pagina is geladen’);
});

Edit in JSFiddle

jQuery

Met jQuery kunt u JavaScript-code uitvoeren zodra het DOM volledig is geladen met behulp van de methode .ready(), die equivalent is aan window.onload in JavaScript. Elk van de volgende syntaxen kan worden gebruikt, die allemaal hetzelfde zijn:

  • $(document).ready(handler)
  • $(“document”).ready(handler)
  • $().ready(handler)
1
2
3

$(document).ready(function() {
alert(‘Pagina is geladen’);
});

Edit in JSFiddle

Als alternatief kan $(handler) worden aangeroepen, wat gelijkwaardig is aan bovenstaande syntaxis:

1
2
3

$(function() {
alert(‘Pagina is geladen’);
});

Edit in JSFiddle

U kunt ook letten op het load event op het window object met behulp van $(window).on("load", handler) methode.

1
2
3

$(venster).bind(‘load’, function() {
alert(‘Pagina is geladen’);
});

Edit in JSFiddle

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.