Newsgroup: it.comp.lang.javascript
Titolo: "riferimenti" esterni in un funzione: è possibile?

Prima del tag </head> di una pagina html richiamo circa 20 file .js con il 
codice:
<html>
<head>
<title>Prova</title>
<script src="../js/filejs-1.js" type="text/javascript"></script>
.
.
.
<script src="../js/filejs-20.js" type="text/javascript"></script>
</head>
<body>
Avrebbe lo stesso effetto una qualche funzione che richiami questi 20 file, 
ma lanciata dopo il tag body, cosě da poter mettere una loading gif visto 
che i tempi di attesa non sono minimi?
Sto dicendo una schioccezza colossale?
Grazie 



uhm ... 20 file js non penso creino tempi di latenza ... ma contengono
function (che poi invocherai in seguito) oppure eseguono codice?
-- 
"e mai che mi sia venuto in mente
 di essere piů ubriaco di voi
 di essere molto piů ubriaco di voi"
									  F.D.A.

 function (che poi invocherai in seguito) oppure eseguono codice?
Entrambe le cose.
Inizialmente pensavo fosse il codice del corpo pagina a creare latenza ed ho 
provato con:
<body onLoad="init()">
<div id="loading" style="position:absolute; width:100%; text-align:center; 
top:90px;"><img src="loader.gif" border=0></div>
<script type="text/javascript"> var ld=(document.all);  var 
ns4=document.layers; var ns6=document.getElementById&&!document.all; var 
ie4=document.all;  if (ns4)  ld=document.loading; else if (ns6) 
ld=document.getElementById("loading").style; else if (ie4) 
ld=document.all.loading.style;  function init() { 
if(ns4){ld.visibility="hidden";} else if (ns6||ie4) ld.display="none"; } 
</script>
ma ho visto che il loader.gif non veniva caricato ho pensato che la latenza 
potesse dipendere da quello che ho a monte del contenuto pagina... sto 
sbagliando concettualmente?

 </script>
non devi mettere nulla qua: lascia pure tutto nell'head, racchiudi tutto in
una function ed eseguila interamente onload. al termine della init()
nascondi la tua immagine.
-- 
"Affacciati affacciati benedici, guardaci
 guardaci...guardaci!
 Tanto sono quasi duemila anni che stai a guardare!"
									    E.B.

 nascondi la tua immagine.
Aspetta... vediamo se ho capito.
1 - creo una function head() che richiama tutti i js (non l'ho mai fatto... 
vado di document.write("<scr+ ipt>...)?)
2 - lascio il <body onLoad="init()">
3 - alla fine della funzione init() chiamo la function head().
E' giusto cosě?
Se la risposta č si, mi confermi il punto 1 per il metodo di costruzione 
della function?
Grazie tante. 

 3 - alla fine della funzione init() chiamo la function head().
-- 
"That until there is no longer first class
And second class citizens of any nation
Until the colour of a man's skin
Is of no more significance than the colour of his eyes
Me say war"
B.M.


Chiedo scusa, ma ho riletto piů volte anche i messaggi precendeti che mi hai 
scritto ma proprio non ho capito.
Ora ho questo:
<head>
<title>Prova</title>
<script src="../js/filejs-1.js" type="text/javascript"></script>
.
.
.
<script src="../js/filejs-20.js" type="text/javascript"></script>
</head>
<body onLoad="init()">
<div id="loading" style="position:absolute; width:100%; text-align:center;
top:90px;"><img src="loader.gif" border=0></div>
<script type="text/javascript"> var ld=(document.all);  var
ns4=document.layers; var ns6=document.getElementById&&!document.all; var
ie4=document.all;  if (ns4)  ld=document.loading; else if (ns6)
ld=document.getElementById("loading").style; else if (ie4)
ld=document.all.loading.style;  function init() {
if(ns4){ld.visibility="hidden";} else if (ns6||ie4) ld.display="none"; }
</script>
Ma cosě, perň, c'č una certa latenza al caricamento della pagina, 
praticamente il loader.gif nemmeno mi appare. :-(
Grazie e scusa la mia ignoranza in materia. 

 </script>
qua devi togliere tutto lo script, lo stai già eseguendo nella init ...
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

 qua devi togliere tutto lo script, lo stai già eseguendo nella init ...
Questa non l'ho capita.
Ti riferisci allo script dopo il body? Ma è li che è contenuta la init().
Sicuramente è colpa, ma mi sa che abbiamo un'incompresione a monte... 

 Sicuramente è colpa, ma mi sa che abbiamo un'incompresione a monte...
eh? la init la esegui body onload ... qua stai creando una strana init che
nasconde subito l'immagine ...
ricapitolando:
a) racchiudi tutto lo script in una function detta init()
b) la esegui onload
c) al termine della init nascondi l'immagine
-- 
"e mai che mi sia venuto in mente
 di essere più ubriaco di voi
 di essere molto più ubriaco di voi"
									  F.D.A.

 a) racchiudi tutto lo script in una function detta init()
Ma con "tutto lo script" intendi tutti richiami ai famigerati 20 files?
Grazie per la pazienza. 

 Ma con "tutto lo script" intendi tutti richiami ai famigerati 20 files?
sì. non so cosa facciano questi megascript da 20k l'uno (ho paura solo a
pensarci), ma se vuoi visualizzare una immagine devi racchiudere tutto in
function ed eseguire onload, anziché eseguire mentre carichi la pagina.
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.