Federico MP wrote:
> Primeros pasos con Javascript, sepan disculpar.
> En Internet Explorer 6 SP2, la siguiente linea hace aparecer la barra de
> información (una especie de advertencia de seguridad):
>
> window.onload = foo;
>
> donde foo es una función.
> Pero por otro lado, <body onload="foo()" no produce ninguna advertencia.
>
> Por favor, diganme que burlar a Internet Explorer no es tan sencillo como
> parece.
>
>
Federico:
1) Existe una lista de javascript, llamada javaEScript en este mismo
servidor.
2) Tu mensaje, por lo tanto, es off-topic y deberías haberlo marcado de
esa forma.
3) Cuando asignás haciendo foo() lo que asignás es el resultado de la
función y no la función en sí. Es decir, de la segunda forma, estás
ejecutando la función foo() y asignándo ese resultado a window.onload
Podrías probar de esta forma:
window.onload = function () {
foo();
}
4) Otra cosita: usar window.onload no es muy DOM-ish, deberías usar
métodos como document.addEventListener y attachEvent (para IE y los
demás, respectivamente) ... pero estos no son cross-browser.
Por lo tanto yo me hice una función que trabaja bastante bién con la
mayoría de los navegadores en los que la he probado, y en los que no
funciona (ej: ie4) no causa ningún error ni advertencia molesta, tiene
un alert pero es solo para debugging, una vez que lo deshabilitás no
genera errores de código inválido.
function addListener(obj,evt,func) {
if (obj.attachEvent)
obj.attachEvent('on' + evt, func);
else {
if (obj.addEventListener) {
obj.addEventListener(evt,func,false);
}
else {
if (obj.eval) {
obj["on"+evt] = func;
} else {
alert("Error adding listener\nObject:"+obj+"
ID:"+obj.id+" Name:"+obj.name+" TagName:"+obj.tagName+"\nEvent:"+evt);
}
}
}
}
Se usa de la siguiente manera:
addListener(obj objeto,str evento,obj funcion);
ejemplo:
addListener(window,"load",foo);
Espero que te sea útil.
Martin.
__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
_______________________________________________
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a [email protected]
Puedes modificar tus datos o desuscribirte en la siguiente dirección:
http://ovillo.org/mailman/listinfo/ovillo