Ciao a tutti, avrei un problema da porvi. Tempo fa un'utente di voi aveva postato il sorgente di una gallery che mi colpì particolarmente per la sua funzionalità (purtroppo non mi ricordo chi era) sono riuscito ad adattare il codice a ciò di cui avevo bisogno...tutto ok, l'unica cosa è che ho una cartella con una quarantina di foto però non riesco a definire che in automatico mi crei una seconda o terza pagina. Per ogni pagina ci sono 18 miniature con relativo zoom, però non mi crea le pagine successive
![]()
ho provato a vedere il codice ma non ci capisco una mazza. Vi posto il codice sperando e chiedendovi gentilmente di aiutarmi a correggere l'inghippo. Magari passa di qui il proprietario della meravigliosa creazione che mi aiuta
grazie questo è il codice
codice:stop(); j = 0; pag = 1; // Coordinate per posizionamento e incremento del clip inizioX = corX=52; corY = 88; incrX = 91; incrY = 89; puls._visible = false; function pulsanti(fine) { numPuls = Math.ceil(dati.testo/18); for (a=0; a<numPuls; a++) { // Dupplico e dispongo i pulsanti duplicateMovieClip(puls, "puls"+a, a); this["puls"+a]._x = this.puls._x+(25*(a)); this["puls"+a].testo = a+1; path = eval("puls"+a); path.a = a; path.onRollOver = function() { this.nextFrame(); }; path.onRollOut = function() { this.prevFrame(); }; path.onRelease = function() { pag = this.a+1; max1 = 18*this.a; max2 = max1+18; agg = new Array(); agg[this.a] = [dati.testo-max1, dati.testo-max2]; buona = agg[this.a]; ultimoPuls = eval("this.puls"+Math.round(a-1)); if (this == ultimoPuls) { // faccio in modo che se le immagini nell'ultima pagina non arrivano a 15 vengano cancellati i clip vuoti avanzo = Math.round((numPuls*18)-dati.testo); buona[1] = buona[1]+avanzo; via(buona[0], buona[1]); buona[1] = buona[1]-avanzo; } else { via(buona[0], buona[1]); } }; } } function via(inizio, fine) { if (dati.testo<=18) { fine = 0; } imgNum = inizio+" - "+(fine+1); top = "Pagina numero: "+pag+" Numeri immagini: "+imgNum; j = 0; inizioX = corX=52; corY = 88; incrX = 91; incrY = 89; to = Math.round(dati.testo*18); for (f=fine; f>0; f--) { // cancello i 15 clip maggiori cancella = "mc"+f; removeMovieClip(cancella); } for (f=inizio; f<to; f++) { // cancello i 15 clip minori cancella2 = "mc"+f; removeMovieClip(cancella2); } for (i=inizio; i>fine; i--) { attachMovie("mc","mc"+i,(dati.testo*18)-i); path = eval("mc"+i); path.i = i; if (i>=1) { if (i<=9) { loadMovie("imgGallery/preview/mini00"+i+".jpg", path.foto); } else if (i<=99) { loadMovie("imgGallery/preview/mini0"+i+".jpg", path.foto); } else if (i>99) { loadMovie("imgGallery/preview/mini"+i+".jpg", path.foto); } } path._x = corX; path._y = corY; if (j == 5) { // faccio in modo che le 15 immagini si dispongano in file da 5 j = 0; corX = inizioX; corY += incrY; } else { corX += incrX; j++; } path.onRollOver = function() { this._xscale = 105; this._yscale = 105; }; path.onRollOut = function() { this._xscale = 100; this._yscale = 100; }; path.onRelease = function() { if (this.i == dati.testo) { foto.indietro._visible = false; } else { foto.indietro._visible = true; } if (this.i == 1) { foto.avanti._visible = false; } else { foto.avanti._visible = true; } sfondo._visible = true; foto._visible = true; sfondo.play(); if (this.i<=9) { loadMovie("imgGallery/foto00"+this.i+".jpg", foto.fotoBig); newI = this.i; } else if (this.i<=99) { loadMovie("imgGallery/foto0"+this.i+".jpg", foto.fotoBig); newI = this.i; } else if (this.i>99) { loadMovie("imgGallery/foto"+this.i+".jpg", foto.fotoBig); newI = this.i; } }; foto.indietro.onRelease = function() { // Imposto pulsante PREV foto.avanti._visible = true; if (newI == dati.testo-1) { this._visible = false; } else { this._visible = true; } if (newI<dati.testo) { if (newI<9) { loadMovie("imgGallery/foto00"+(newI+1)+".jpg", foto.fotoBig); } else if (newI<99) { loadMovie("imgGallery/foto0"+(newI+1)+".jpg", foto.fotoBig); } else if (newI>99) { loadMovie("imgGallery/foto"+(newI+1)+".jpg", foto.fotoBig); } newI = newI+1; } }; foto.avanti.onRelease = function() { // Imposto pulsante NEXT foto.indietro._visible = true; if (newI == 2) { this._visible = false; } else { this._visible = true; } if (newI>1) { if (newI<=10) { loadMovie("imgGallery/foto00"+(newI-1)+".jpg", foto.fotoBig); } else if (newI<=100) { loadMovie("imgGallery/foto0"+(newI-1)+".jpg", foto.fotoBig); } else if (newI>100) { loadMovie("imgGallery/foto"+(newI-1)+".jpg", foto.fotoBig); } newI = newI-1; } }; } } pulsanti(); via(dati.testo,dati.testo-18); //via(testo, testo-15);

) sono riuscito ad adattare il codice a ciò di cui avevo bisogno...tutto ok, l'unica cosa è che ho una cartella con una quarantina di foto però non riesco a definire che in automatico mi crei una seconda o terza pagina. Per ogni pagina ci sono 18 miniature con relativo zoom, però non mi crea le pagine successive
grazie questo è il codice
Rispondi quotando
grazie per la risposta...praticamente io ho appunto questa gallery composta da tre file di sei quadrati (miniature foto) per un totale di 18 miniature visualizzate (pescate dinamicamente da una cartella). Il problema è che in questa cartella ci sono più di 18 miniature, ma non mi crea le altre pagine....tu dici che inserendo questo codice risolvo il problema? :master:
