Re: [javaEScript] duda sobre visibilidad y ámbito de funciones
carlos campderrós
gilipollas.desconcertante en gmail.com
Jue Ago 17 02:01:02 PDT 2006
On 8/17/06, Diego Rodriguez <diegohumanista en gmail.com> wrote:
>
> Oye, yo lo tengo en varios archivos separados y no he tenido problemas...
> Ser=E1 que estar=E1s cargando las rutinas de inicializaci=F3n en algun lu=
gar
> diferente al onload?
> Si lo pones al final del html, es posible que el navegador no haya cargado
> los archivos .js cuando ejecute tu codigo... creo que si lo pones en el
> onload a la funcion que inicialice va a funcionar...
>
> Diego
>
lo ten=EDa as=ED en el html:
<html>
<head>
<script type=3D"type/javascript" src=3D"utils.js"></script>
<script type=3D"type/javascript" src=3D"domNavigation.js"></script>
<script type=3D"type/javascript" src=3D"newResource.js"></script>
</head>
...
</html>
y la =FAltima l=EDnea de newResource.js es "addListener(window, "load",
loadInputHandlers);". addListener es una funci=F3n que tom=E9 prestada de M=
art=EDn
Szyszlican de un post de la lista ovillo y que siempre me ha venido bien
para a=F1adir eventos de forma "compatible" (la a=F1ado a continuaci=F3n), y
loadInputHandlers asocia onclicks a funciones (la a=F1ado al final). Supongo
que si cambio addListener(elem, "click", fooBar); por elem.onclick =3D fooB=
ar;
desaparecer=E1 el problema con el this que he explicado en otro mail, pero =
eso
es otro tema. Bueno, no s=E9 si he aclarado algo la verdad... Por ahora como
soluci=F3n cutre he adoptado seguir con varios archivos .js, y despu=E9s de
modificaci=F3n, volcar todos los archivos a otro, que es el q llamo en el
html.
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] =3D func;
} else {
//alert("Error adding listener\nObject:"+obj+"ID:"+obj.id+"
Name:"+obj.name+" TagName:"+obj.tagName+"\nEvent:"+evt);
}
}
}
}
function loadInputHandlers()
{
dbg =3D document.getElementById("debug_box");
debug("loadInputHandlers() started");
addListener(document.getElementById("propertiesButton"), "click",
addToList);
addListener(document.getElementById("functionalitiesButton"), "click",
addToList);
addListener(document.getElementById("nameButton"), "click", setName);
addListener(document.getElementById("createButton"), "click",
createXML);
document.getElementsByTagName("BODY")[0].removeChild(
document.getElementById("nojs"));
debug("loadInputHandlers() finished");
}
-- =
Si no puedes deslumbrar con tu inteligencia,
desconcierta con tus gilipolleces
------------ pr=F3xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: /pipermail/javaescript-scriptia.net/attachments/20060817/3481d348/atta=
chment.htm
Más información sobre la lista de distribución javaEScript