Salve a tutti e bentrovati, sono nuovo dal forum, ho letto le faq e gran parte delle guide sul JavaScript presenti su html.it e tuttavia non sono riuscito a chiarire alcuni dubbi che vi propongo, subito dopo avervi spiegato a cosa sto lavorando:
Ho suddiviso la pagina in tre div principali. Il primo e' a sinistra, un menu generale per tutto il sito, il secondo (chiamiamolo CENTRALE) e' un frame dove verra' visualizzata la parte "corposa" della pagina e il terzo (ed e' quello che mi da problemi, e che chiamero' INFERIORE) e' un secondo menu, regolato in una tabella e collegato esclusivamente al secondo div.
Nell'INFERIORE dovrebbero esserci delle immagini che, una volta cliccate, caricano nel CENTRALE una determinata pagina. Oltre a caricare la suddetta pagina, voglio che le immagini dell'INFERIORE cambino a seconda di quale pagina e' selezionata. Faccio un esempio pratico:
clicco sull'immagine 1, mi appare l'immagine img1ON e nel CENTRALE si carica la pagina pagina1.html
clicco sull'immagine 2, mi appare l'immagine img2ON, l'immagine img1ON cambia con l'immagine img1OFF e nel CENTRALE si carica la pagina pagina2.html
ecc ecc
Purtroppo l'ora e' quella che e', quindi se la mia spiegazione non e' chiara riprovero' a riformularla domattina. Avevo fatto una funzione esterna con passaggio di argomenti, ma non riesco a farla funzionare. Copio il codice per farvi capire cosa avevo pensato di fare.
//il file dovrebbe essere esterno, visto che verrebbe richiamato parecchie volte
//il tag <table> si apre e si chiude fuori dalla funzione
//la variabile vox indica quale voce e' stata scelta (se e' stata cliccata la prima, la seconda, la terza o l'ennesima immagine)
//la variabile numenu indica il numero di voci del menu, che sono variabili (in alcune pagine solo due, in altre fino a 4, motivo per cui ho preferito fare la funzione cosi' "generica")
function javamenu(vox,numenu)
{
document.write("<td>");
c=1;
do{
document.write("<tr>");
if(vox == c)
{
document.write("<a href=\"pagina"+c+".html\" target=\"central\"><img src=\"pagina"+c+"on.GIF\"></a>")
}
else
{
document.write("<a href=\"pagina"+c+".html\" target=\"central\"><img src=\"pagina"+c+"off.GIF\"></a>")
}
document.write("</tr>");
c++;
}
while(c<numenu);
document.write("</td>");
return();
}
So bene che, essendo la prima stesura del codice, fa acqua da tutte le parti, e non so ancora se ho mischiato java e c... Per questo vi chiedo il vostro aiuto.
1) qual'e' la sintassi corretta per richiamare una funzione da un file esterno? Cosa va messo nel head e cosa nel body?
2) come faccio a dire che mi deve caricare il java esattamente in quel div?
3) come faccio a rendere ricorsiva la funzione, in maniera tale che il cambio di immagini del menu avvenga senza problemi?
Grazie in anticipo per le gentili risposte
-Lorenzo