Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di bode
    Registrato dal
    Feb 2007
    Messaggi
    304

    Problema da niubbo sul passaggio di valore a funzione

    Ho fatto una banale funzione che ad ogni click del mouse sopra un'immagine questa verrà modificata fino a cambiare tot immagini per poi ricominciare il ciclo.
    codice:
    <script language="JavaScript">
    
    foto=new Array()
    
    foto[1]="images/img_S1_0_0.gif"
    foto[2]="images/img_S1_1_0.gif"
    foto[3]="images/img_S1_1_1.gif"
    foto[4]="images/img_SU_0_0.gif"
    
     numero=1
    
    function avanti(name) {
    
     if(numero<4) 
                       {
                        numero++
                        document[name].src=foto[numero]
                       }
     if(numero==4)
                       {
                          numero=0
                          document[name].src=foto[numero]
                       }
    }
    </script>
    
    [img]images/img_S1_1_1.gif[/img]
    E fin qui tutto ok, funziona alla perfezione, ora il mio problema è io vorrei aggiungere un parametro alla funzione, in modo che la variabile numero non parta inizialmente da 1 ma da un numero che imposto io in questo modo avanti('LUN','3'). Ho provato ad aggiungere anche nella definizione della variabile function avanti(name,numero) {...} ma non funziona! Dove sto sbagliando?

    EDIT: mi correggo, ho provato function avanti(name,n) {var numero=n;...} ma non funziona, è come se non gli arrivasse il numero 3 (nell'esempio)

  2. #2
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    codice:
    function Iteration (oCollection) {
    	this.current = 0;
    	this.collection = oCollection;
    }
    
    Iteration.prototype.next = function (nCurrent) {	
    	return !nCurrent || (this.current = nCurrent), this.collection[this.current++ % this.collection.length];
    }
    
    // ........
    
    var foto = [
    	"images/img_S1_0_0.gif",
    	"images/img_S1_1_0.gif",
    	"images/img_S1_1_1.gif",
    	"images/img_SU_0_0.gif"
    ];
    
    var collezioneFoto = new Iteration(foto);
    
    alert(collezioneFoto.next());
    alert(collezioneFoto.next());
    alert(collezioneFoto.next());
    
    // riparto da 1...
    alert(collezioneFoto.next(1));
    alert(collezioneFoto.next());

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 © 2026 vBulletin Solutions, Inc. All rights reserved.