- Home
- Categorie
- Digital Marketing
- Grafica, Visual Design & UX
- Galleria immagini complicata
-
Galleria immagini complicata
Ciao a tutti. Come al solito faccio una richiesta un po' complicata... Ho costruito una galleria di immagini con 120 quadratini numerati, ciascuno dei quali corrisponde ad una foto della gallery. Ad ognuno di questi ho assegnato un codice in modo tale che se premuto possa caricare un'anteprima dell'immagine all'interno di un movieclip nello stage.
Al caricamento dell'anteprima nel movieclip, cliccando quest'ultimo viene aperta una finestra popup con la foto scaricabile.
Il problema in tutto questo e' che mi viene chiesto continuamente di aggiungere nuove foto e dovro' quindi aggiungere altri "quadratini". Essendomi stancato gia' la prima volta a riscrivere 120 volte il codice per ognuno di essi, mi chiedevo se esiste un sistema (forse utilizzando degli array, ma non ne sono certo) che assegnato al fotogramma anziche' a ciascun singolo elemento possa ripetere meccanicamente la stessa operazione al variare della foto prescelta (01, 02, 03, ...), facendo comparire nel movieclip, dopo averla caricata dinamicamente dall'esterno, l'anteprima della foto 01 qualora io clicchi l'istanza 01, quella della foto 1000 se dovessi premere l'istanza 1000.
Grazie in anticipo per l'aiuto.
-
Si, puoi collegare un file xml, fai una sola volta il codice e creando questo file hai tutte le immagini che vuoi.
-
e mi sapresti dare anche il codice?
-
Allora, questo è un lavoretto che ti posso mostrare, guarda:
Questo è un esempio di file xml
<?xml version="1.0" encoding="iso-8859-1" ?> <percorso> <giocatori indirizzo = "foto 260x280/foto2.jpg"> Giocatori </giocatori> <giocatori indirizzo = "foto 260x280/foto1.jpg"> Giocatori </giocatori> <giocatori indirizzo = "foto 260x280/photo2.jpg"> Giocatori </giocatori> </percorso>
Questo è il codice nel fla:
percorso = new Array(); titolo = new Array(); player = new Array(); nodi = new Array(); XMLfile = new XML(); XMLfile.load("filedacaricare.xml"); XMLfile.onLoad = carica; // ----------------------------------- function carica() { if (this.loaded && this.hasChildNodes) { nodi = XMLfile.childNodes; for (i=0; i<nodi.length; i++) { if (nodi[i].nodeName == "percorso") { percorso = nodi[i].childNodes; for (j=0; j<percorso.length; j++) { if (percorso[j].nodeName == "giocatori") { titolo.push(percorso[j].childNodes); player.push(percorso[j].attributes.indirizzo); } } } } } _root.nextFrame(); }
Ti consiglio di studiartelo e cercare di capire, magari accompagnato da una guida
-
Dimenticavo devi fare il loadMovie
var a = 0; loadMovie(player[a],photo.video1); _root.numero =(a+1)+" / "+player.length;
io in questo caso ho fatto due MC uno dentro all'altro di nome photo e video1