¿Evento LOAD (pagina totalmente cargada) en Javascript?

Desarrollo de aplicaciones basadas en tecnologías Mozilla (XBL-XUL-RDF...)
Destroy

¿Evento LOAD (pagina totalmente cargada) en Javascript?

Mensajepor Destroy » Vie Ene 26, 2007 2:28 pm

Muy buenas. En primer lugar, decir que es mi primera aparicion en el foro, pero me da la impresion que no será la última :)

Bueno, estoy trabajando en una extension. Resumiendo, se supone que al terminar de cargar una página, la extension buscara los elementos IMG y los ajustara al tamaño de la ventana. El problema es que, creando un listener al evento LOAD, el evento se dispara antes de que se haya cargado la página, y si por otro lado uso el DOMContentLoaded, se dispara antes y despues, pero por desgracia, una vez terminada la carga, el script no puede acceder a los elementos mediante el uso de getElementsByTagName.

Este script funciona perfectamente pasandolo a traves del GreaseMonkey, asi que imagino que lo que estoy haciendo mal es el uso del evento.

El codigo es algo asi:

Código: Seleccionar todo


window.addEventListener("DOMContentLoaded",evitar_descuadres,true);

function evitar_descuadres() {
   
var direcc;
var cadena;


direcc=window._content.document.location;
cadena=direcc.toString();

if (cadena.indexOf("elotrolado.net") > -1 || cadena.indexOf("eol.us") > -1 || cadena.indexOf("195.78.228.226") > -1 )
{
   var cabeceras, cabecera;
   cabeceras = document.getElementsByTagName('img');
//   alert(cabeceras.length);   
   for (var i = 0; i < cabeceras.length; i++) {
      
      cabecera = cabeceras[i];
      alert(cabecera.src);
      if (cabecera.getAttribute('width') > (screen.width-500))
      {
         cabecera.setAttribute('width',(screen.width-500));
      }
      if (cabecera.getAttribute('width') == null || cabecera.hasAttribute('width') == false)
      {
         var imagen=new Image();
         imagen.src=cabecera.getAttribute('src');
         if (imagen.width > (screen.width-500)) {
            imagen.width=(screen.width-500);
            cabecera.setAttribute('width',(screen.width-500));
         }
      }

   
   }
   //window.removeEventListener("DOMContentLoaded", evitar_descuadres, true);
   }
}




¿Alguna idea? ¿Alguien sabe que evento usar o como hacer que se dispare solo al terminar la carga?

Muchas gracias!! :D

oscarml

Re: ¿Evento LOAD (pagina totalmente cargada) en Javascript?

Mensajepor oscarml » Jue May 15, 2008 11:04 am

HOla,

Solucionaste el problema? a mi me pasa algo parecido!


Volver a “Desarrollo Mozilla”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado