Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Array -autodefinito-

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    178

    Array -autodefinito-

    In uno script definisco un array come segue:

    immagini = new Array()
    immagini[0]="../Immagini/Screenshots/thumbnails/1";
    immagini[1]="../Immagini/Screenshots/thumbnails/2";
    immagini[2]="../Immagini/Screenshots/thumbnails/3";
    immagini[3]="../Immagini/Screenshots/thumbnails/4";
    immagini[4]="../Immagini/Screenshots/thumbnails/5";
    immagini[5]="../Immagini/Screenshots/thumbnails/6";
    immagini[6]="../Immagini/Screenshots/thumbnails/7";

    Ogni volta che aggiungo immagini alla mia gallery devo necessariamente aggiungere strighe allo script, e questo mi scoccia.

    Esiste un modo per definire genericamente la posizione e la relativa path dell'img?
    Qualcosa che suoni tipo:

    immagini = new Array()
    immagini[x]="../Immagini/Screenshots/thumbnails/x";

    Thx.

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    usando un ciclo for

    codice:
    immagini = new Array():
    for (i=0; i<num_max_thumb; i++) {
      immagini[i] = "../Immagini/Screenshots/thumbnails/" + (i+1);
    }
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    178
    Ma nel tuo ciclo il primo valore valido di i non dovrebbe già essere 1?
    Quindi:

    codice:
    immagini = new Array():
    for (i=0; i<num_max_thumb; i++) {
      immagini[i] = "../Immagini/Screenshots/thumbnails/" +i;
    }
    EDIT: Scusami, vero che la posizione dell'array è sempre di uno inferiore alla path che specifico.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    178
    Scusate se posto troppo codice, però non mi capacito del malfunzionamento di questo script:

    codice:
    immagini = new Array():
      for (i=0; i<13; i++) {
      immagini[i] = "../Immagini/Screenshots/thumbnails/" + (i+1);
    }
    
    links = new Array():
      for (e=0; e<13; e++) {
      links[e] = "http://www.sito.com/Immagini/Screenshots/" + (e+1),.jpg;
    }
    var posizione=1;
    
    function Banner()
    	{
    	(posizione<13)?posizione++:posizione=1;
    	banner = new Image(150,113);
    	banner.src= immagini[posizione]+".jpg";
    	document.LinkImage.src=banner.src;
    	setTimeout('Banner()',5000)
    	}
    function apriScreenshot() 
    
    	{ posizione=posizione+1;
    	window.open("/gallery.php?id="+posizione, 'Sosphero', 'width=778,height=603');
    	}
    
    function Chiudi()
    	{
    	self.close()
    	}

  5. #5
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    1)
    dove hai scritto new Array hai concluso con ( : ) anziché il ( ; )

    2)
    Quest'espressione ternaria
    (posizione<13)?posizione++osizione=1;

    dovrebbe diventare
    posizione = (posizione<13) ? posizione+1 : 1;
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    178
    vero vero, meno male era solo quello ^^. Ho copiato il tuo ciclo senza verificare la punteggiatura, la prossima volta imparo.
    Grazie mille.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.