Newsgroup: it.comp.lang.javascript
Titolo: Come puntare a js con diversi path?

Salve,
e' la prima volta che propongo un questito su questo ng.
Ho cominciato a studiare js solo da pochi giorni e mi e' subito sorto un
problema:
e' possibile comporre, con variabili e altro, il path di uno script da
caricare da un modulo html?
Capisco che si tratta piuttosto di un problema html, ma non ho trovato
il ng adatto.
Ecco l'esempio di implementazione che volevo ottenere:
  <head>
    ....
   <script type="text/javascript">
      var gal_num=parent.scelta;
      var
gal_par_path=gal_path[gal_num]+"gallery"+gal_num+"/g"+gal_num+"_par.js";
    </script>
    <script type="text/javascript" src=gal_par_path></script>
  </head>
Ho verificato (con una document.write nel body) che la stringa
gal_par_path e' composta correttamente,
ma il file da essa puntato non viene caricato.
Qualcuno puo' aiutarmi?

     <script type="text/javascript" src=gal_par_path></script>
Cosě non puň funzionare, temo, perché sei in un tag, non dentro uno script
(quindi non sa neanche cosa sia una variabile js).
Domanda: non puoi farlo lato server? E' molto meglio, piů semplice e
sicuramente cross-browser...
Altrimenti devi giocare con document.write per scrivere il tag corretto, di
meglio non mi viene in mente
-- 
"Emancipate yourselves from mental slavery;
None but ourselves can free our minds"
									    B.M.
--

 meglio non mi viene in mente
Hia ragione, me ne sono accorto solo dopo aver spedito il messaggio.
Pero' il problema non l'ho risolto.
Non so cosa intendi per lato server.
?Per la seconda soluzione, intedi forse qualcosa del tipo:?
var gal_num=parent.scelta;
var gal_par_path=gal_path[gal_num]+"gallery"+gal_num+"/g"+gal_num+"_par.js";
document.write(<script type="text/javascript" src='+gal_par_path'></script>');
non sembra funzionare...

 non sembra funzionare...
Sì, intendevo così ma non ho mai avuto la necessità di provare, se dici che
non va non so cos'altro fare; ricordo però tempo fa un thread su
quest'argomento, hai provato a vedere su 
jsdir.com
 o a cercare su google?
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.
--

 caricare da un modulo html?
E' preferibile evitare di farlo (come ti e' gia' stato suggerito, e'
preferibile usare una tecnologia server side), ma puoi fare cosi':
<script type="text/javascript">
var gal_num=parent.scelta,
	gal_par_path=gal_path[gal_num]+"gallery"+gal_num+"/g"+gal_num+"_par.js";
document.open();
document.write("<scr"+"ipt type=\"text/javascript\"
src=\""+gal_par_path+"\"></scr"+"ipt>";
document.close();
</script>
-- 
ZER0://coder.gfxer.web-designer/
~ Tutti quelli che credono nella psicocinesi, per favore alzino la mia
mano.
on air ~ "Ligabue - Ho Messo Via"

 src=\""+gal_par_path+"\"></scr"+"ipt>";
Bravo...questo me l'ero dimenticato, lo spezzettamento del tag script...e
adesso che lo vedo ricordo pure che lo ho usato un po' di volte in un
passato remoto (via asp, ma il problema era lo stesso)
-- 
"Affacciati affacciati benedici, guardaci
 guardaci...guardaci!
 Tanto sono quasi duemila anni che stai a guardare!"
									    E.B.
--

 questo me l'ero dimenticato, lo spezzettamento del tag script...
Pratica caduta in disuso, in effetti.
-- 
ZER0://coder.gfxer.web-designer/
~ Una mente perversa e' un peccato sprecarla.
(A dirty mind is a terrible thing to waste)
on air ~ "Luca Dirisio - Calma e sanguefreddo"

In data Wed, 28 Jul 2004 16:47:02 +0200, ZER0 ha scritto:
[OT]
Hai ricevuto le mie mail?
[/OT]


cirillo curiosone wrote:

Dimenticavo ... ho proposto il questito anche su comp.lang.javascript
... sto ancora aspettando che qualcuno risponda...

 Renato, 
Vade retro satana.. non ha nulla a che vedere il mio nick con tale figuro.
:)
-- 
ZER0://coder.gfxer.web-designer/
~ L'ingegnere non vive, funziona.


 ... sto ancora aspettando che qualcuno risponda...
Oh beh.. molti degli utenti di quel NG ha un fuso orario diverso dal
nostro.
Mi piacerebbe partecipare con assiduita' anche a quel NG.. quando il mio
inglese sara' un attimo migliore, magari.. -_-
-- 
ZER0://coder.gfxer.web-designer/
~ Tutti quelli che credono nella psicocinesi, per favore alzino la mia
mano.
on air ~ "Luca Dirisio - Calma e sanguefreddo"

 [/OT]
Manco mezza. Ti ho scritto infatti poc'anzi per sapere come organizzarsi.
-- 
ZER0://coder.gfxer.web-designer/
~ "Problemi" e' il nome che gli informatici danno a quelli che
comunemente verrebbero definiti "disastri"; altrimenti si chiamano
"features".


 src=\""+gal_par_path+"\"></scr"+"ipt>";
Perchè spezzi <script?
Sono curioso. Non l'ho mai visto fare.
Ciao.
	-Ema-



Prova senza...asp segnala un erroraccio se non ricordo male, lato client
invece sembra non considerarlo...


ZER0 wrote:

Comunque ... ho provato ... NISBA!
O meglio, ho messo una document.write all'interno del file da caricare e,
in effetti, di li' ci passa ...
ma le variabili che setto al suo interno (mi serve solo per questo) appena
rientro nel chiamante sono svanite!!!
comincio a demoralizzarmi ... dovro' mica fare un unico pippone di file
dati con una mega-matrice???

 Sono curioso. Non l'ho mai visto fare.
Ci sono tante cose che non si vedono fare, se e' per questo.
Ma che tu non abbia visto questa in particolare e' strano, all'epoca era
prassi comune.
Va da se' che io preferisco evitare questo genere di cose, e se devo farle
per forza, vedo di farlo all'interno di un file js esterno. In questo modo
non si necessita di spezzare alcunche'.
-- 
ZER0://coder.gfxer.web-designer/
~ Ci siamo fatti una scopata cosi' eccezionale che anche i vicini hanno
fumato una sigaretta.
on air ~ "ct - openning"

 rientro nel chiamante sono svanite!!!
se tu pretendi di fare:
<script type="text/javascript">
	document.write("<scr"+"ipt .. eccc
	alert(variabileNelloScript);
</script>
Dove "variabileNelloScript" e', ovviamente, una variabile che setti
all'interno del file che chiami in tale modo, dubito assai che possa
funzionarti. Prova eventualmente cosi':
<script type="text/javascript">
	document.write("<scr"+"ipt .. eccc
	window.onload=function(){
		alert(variabileNelloScript);
	};
</script>
E nel file metti qualcosa tipo:
var variabileNelloScript="un classico 'Hello World'";
E fammi sapere come va'.
Non ho mai fatto di queste cose, sono un po' "da teppista". Sicuramente ci
sono soluzioni migliori al tuo problema, prova a esporci come mai sei
costretto a ricorrere a questo tipo di approccio, e magari ti troviamo
qualcosa di meglio.
-- 
ZER0://coder.gfxer.web-designer/
~ You don't have to be crazy to be a webmaster. But it helps.


Allora ... un paio di settimane fa mi sono messo in testa di scrivere un po' di
html per esporre una mia galleria fotografica.
Sai com'e'... una galleria cominci ad organizzarla ... diventano due, tre ...
alla fine, prima di mettermi a scrivere centomila file tutti uguali mi sono
detto:
"scrivo due tre pagine parametriche, clicco qua e carico i dati di una galleria
(dimensioni, titoli, path, ...)"
ergo -> js!
Ora tutto il problema e', una volta che ho un intero (gal_num), usarlo per
aprire un file pieno di definizioni e assegnazioni di variabili da utilizzare
per creare i path, i sottotoli e via dicendo ...
Ovviamente, per complicare le cose, lavoro sotto frame.
In uno carico i thumbnail con gli href per le foto intere che poi dovrei far
apparire in un altro frame...
chiedo troppo? (forse per la schiappa che sono si'... ma che visione
d'insieme!!!)


 E fammi sapere come va'.
vedo la variabile tra le due parentesi graffe (ovvero dove tu hai posto
l'alert) e non al di fuori...
Non dovro' mica trasformare tutto il corpo script nel corpo della funzione???
Ci provo...

 Ci provo...
Peggio che mai ... mi perde la configurazione del css file...
boohhh...

 Ovviamente, per complicare le cose, lavoro sotto frame.
Ahia.
-- 
ZER0://coder.gfxer.web-designer/
~ "Compiere l'impossibile e' impresa che risiede nel cuore degli uomini"
(Mariners and generals)
on air ~ "Ligabue - 08 Eri Bellissima"

 Non dovro' mica trasformare tutto il corpo script nel corpo della funzione???
Guarda che normalmente il "corpo dello script" dovrebbe essere breve e
corto. Il lavoro grosso si suddivide tra funzioni e oggetti che
interagiscono tra loro.
-- 
ZER0://coder.gfxer.web-designer/
~ Come devo regolare la stampante laser per stordire?
(How do I set a laser printer to stun?)
on air ~ "Ligabue - 08 Eri Bellissima"

 Peggio che mai ... mi perde la configurazione del css file...
Se all'interno della window.onload hai messo un document.write, si..
Ti conviene dare un occhiata a dei linguaggi server side. Per queste cose
e' preferibile. Ed eventualmente, leggerti un po' di reference su JS, per
le cose lato client (
http://devedge.netscape.com/central/javascript/
).
-- 
ZER0://coder.gfxer.web-designer/
~ Ci siamo fatti una scopata cosi' eccezionale che anche i vicini hanno
fumato una sigaretta.
on air ~ "Ligabue - 08 Eri Bellissima"

ZER0 wrote:

Ciao Zero,
ho risolto in un modo "paraculo".
Ho messo tutti i dati in un solo file e buonanotte.
Devo ancora risolvere la questione della definizione di un array bidimensionale
che mi contenga i titoli delle foto.
Piu' in la'.
Il tuo indirizzo vero e' quello che si legge?
Cosi' ti giro l'url e mi dici che ti sembra (dal pto di vista tecnico , non
artistico).
Ciao.