exécuter la fonction après le chargement complet de la page

J'utilise le code suivant pour exécuter certaines instructions après le chargement de la page.

 <script type="text/javascript">
    window.onload = function () { 

        newInvite();
        document.ag.src="b.jpg";
    }
</script>

Mais ce code ne fonctionne pas correctement. La fonction est appelée même si certaines images ou éléments sont en cours de chargement. Ce que je veux, c'est appeler la fonction lorsque la page est complètement chargée.

Cela peut vous convenir :

document.addEventListener('DOMContentLoaded', function() {
   // your code here
}, false);

ou si vous êtes à l'aise avec jquery,

$(document).ready(function(){
// your code
});

$(document).ready() se déclenche sur DOMContentLoaded, mais cet événement n'est pas déclenché de manière cohérente entre les navigateurs. C'est pourquoi jQuery va très probablement mettre en œuvre des solutions de contournement lourdes pour prendre en charge tous les navigateurs. Il sera donc très difficile de simuler exactement ce comportement en utilisant du simple Javascript (mais pas impossible bien sûr).

Comme Jeffrey Sweeney et J Torres l'ont suggéré, je pense qu'il est préférable d'avoir une fonction setTimeout, avant de lancer la fonction comme ci-dessous :

setTimeout(function(){
 //your code here
}, 3000);
Commentaires (11)

Si vous pouvez utiliser jQuery, regardez load. Vous pourriez alors définir votre fonction pour qu'elle s'exécute après la fin du chargement de votre élément.

Par exemple, prenons une page contenant une simple image :

![Book](book.png)

Le gestionnaire d'événements peut être lié à l'image :

$('#book').load(function() {
  // Handler for .load() called.
});

Si vous souhaitez que tous les éléments de la fenêtre actuelle soient chargés, vous pouvez utiliser la commande

$(window).load(function () {
  // run code
});
Commentaires (6)

Essayez ceci [jQuery][0] :

$(function() {
 // Handler for .ready() called.
});

[0] : http://api.jquery.com/ready/

Commentaires (1)