ejecutar la función después de la carga completa de la página

Estoy usando el siguiente código para ejecutar algunas sentencias después de la carga de la página.

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

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

Pero este código no funciona correctamente. La función se llama incluso si algunas imágenes o elementos se están cargando. Lo que quiero es llamar a la función de la página se carga completamente.

esto puede funcionar para usted :

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

o si te sientes cómodo con jquery,

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

$(document).ready() se dispara en DOMContentLoaded, pero este evento no se dispara consistentemente entre los navegadores. Por ello, es muy probable que jQuery implemente algunas soluciones pesadas para dar soporte a todos los navegadores. Y esto hará que sea muy difícil simular "exactamente" el comportamiento usando Javascript simple (pero no imposible, por supuesto).

Como Jeffrey Sweeney y J Torres sugirieron, creo que es mejor tener una función setTimeout, antes de disparar la función como la siguiente:

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

Si puedes usar jQuery, mira load. Podrías entonces configurar tu función para que se ejecute después de que tu elemento termine de cargarse.

Por ejemplo, considere una página con una imagen simple:

![Book](book.png)

El manejador de eventos puede estar ligado a la imagen:

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

Si necesita que se carguen todos los elementos de la ventana actual, puede utilizar

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

Prueba esto jQuery:

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