Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    setInterval + function: problemi

    codice:
    //funzione di preload
    //preloadFOTO = function(numero){
    function preloadFOTO(numero) {
    	/*this["mini"+numero].car = this["mini"+numero].getBytesLoaded();
    	this["mini"+numero].tot = this["mini"+numero].getBytesTotal();
    	if (this["mini"+numero].car==this["mini"+numero].tot ){
    		clearInterval(this["varInt"+numero])
    	}*/	
    	trace(numero)
    	//trace("!")
    }	
    	
    
    for (i=1;i<8;i++){
    
    	duplicateMovieClip("sorgente", "mini"+i,i)
    	this["mini"+i]._y=0
    	this["mini"+i]._x= Math.floor((this["mini"+i]._width+5)*(i-1))
    	j=i.toString()
    	if (j.length<2){
    		j= "0" + i	
    	}
    	URL = "fotopaoli/small/"
    	est = ".jpg"
    	this["mini"+i].clipFoto.loadMovie(URL + j + est,1)
    	this["IdInt"+i] = setInterval(this.preloadFOTO(),100, i)
    }
    Questo sta sulla timeline di un clip (con un unico frame)
    2 problemi
    la funzione non mi segue l'intervallo ma mi viene lanciata solo una volta (per ogni ciclo). Ho i primi 7 trace e basta.
    Il trace invece di darmi il valori di i mi da undefined.
    Why?

  2. #2
    Entrambi gli errori sono causati dal fatto che nel setInterval il nome della funzione va senza parentesi

    Quindi

    this["IdInt"+i] = setInterval(this.preloadFOTO,100, i)

    In tal modo la funzione sarà eseguita in modo continuo e traccerà correttamente i valori da 1 a 7.

  3. #3
    Ma che somaro...

  4. #4
    Succede a tutti di fare dei piccoli errorini che poi rischian di farti perdere delle ore a cercarli

    Ciao e alla prossima

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.