Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    200

    MX2004PRO Passare un parametro ad una variabile dentro un funzione

    Salve,

    x nn dover riscrivere lo stesso codice x diversi oggetti netStrem ho creato questa funzione che passa come paramentro il numero dell'oggetto netStrem interessato.
    codice:
     
    function myProgressBar(num) {
    	var buffCar = eval("myNetStream"+num+".bufferLength");
    	var buffTot = eval("myNetStream"+num+".bufferTime");
    	var loadCar = eval("myNetStream"+num+".bytesLoaded");
    	var loadTot = eval("myNetStream"+num+".bytesTotal");
    	buffer_mc.progressBar_mc._width = Math.round((buffCar/buffTot)*100);
    	load_mc.progressBar_mc._width = Math.round((loadCar/loadTot)*100);
    }
    tutto funziona correttamente, basta che richiamo la funzione inserendo al posto di "num" il numero dell'oggetto in questione
    ma mi chiedevo se questa fosse la procedura corretta? forse dovrei utilizzare qualcos'altro al posto di eval()!

    Qualcuno saprebbe aiutarmi

    Grazie

  2. #2
    secondo me è corretto visto che utilizzi il modo

    ("myNetStream"+num)

    l'alternativa non la conosco. Ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    200
    Ciao, mi è venuto il dubbio perchè ricordo di aver letto da qualche parte ke eval() viene usato solo per esportare filmati da visualizzare sul Flash Player 4.

    Probab Sbaglio

    Grazie

  4. #4
    codice:
    function myProgressBar(num) {
    	var buffCar = this["myNetStream"+num].bufferLength;
    	var buffTot = this["myNetStream"+num].bufferTime;
    	var loadCar = this["myNetStream"+num].bytesLoaded;
    	var loadTot = this["myNetStream"+num].bytesTotal;
    	buffer_mc.progressBar_mc._width = Math.round((buffCar/buffTot)*100);
    	load_mc.progressBar_mc._width = Math.round((loadCar/loadTot)*100);
    }
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    200
    Originariamente inviato da andr3a
    codice:
    function myProgressBar(num) {
    	var buffCar = this["myNetStream"+num].bufferLength;
    	var buffTot = this["myNetStream"+num].bufferTime;
    	var loadCar = this["myNetStream"+num].bytesLoaded;
    	var loadTot = this["myNetStream"+num].bytesTotal;
    	buffer_mc.progressBar_mc._width = Math.round((buffCar/buffTot)*100);
    	load_mc.progressBar_mc._width = Math.round((loadCar/loadTot)*100);
    }
    Ciao, avevo provato anche this ma nn funzionava, ora capisco il perche, ho scritto this["myNetStream"+num+.bufferLength];

    provo a sostituirlo, Grazie

  6. #6
    usare eval o this[] non fa differenza (a parte nell'assegnazione dell'operando).
    ma sei sicuro che nella stessa timeline esista quell'oggetto ?
    Free ActionScript Editor

    Y en silencio y sin cruzar una palabra
    solamente una mirada es suficiente para hablar

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    200
    Originariamente inviato da andr3a
    codice:
    function myProgressBar(num) {
    	var buffCar = this["myNetStream"+num].bufferLength;
    	var buffTot = this["myNetStream"+num].bufferTime;
    	var loadCar = this["myNetStream"+num].bytesLoaded;
    	var loadTot = this["myNetStream"+num].bytesTotal;
    	buffer_mc.progressBar_mc._width = Math.round((buffCar/buffTot)*100);
    	load_mc.progressBar_mc._width = Math.round((loadCar/loadTot)*100);
    }
    Non funziona

    Originariamente inviato da flash_mx2
    usare eval o this[] non fa differenza (a parte nell'assegnazione dell'operando).
    ma sei sicuro che nella stessa timeline esista quell'oggetto ?
    Certo è tutto nella stessa timeline, cmq eval(9 funziona benissimo solo pensavo nn fosse il metodo corretto, ho deciso di nn usare nessuno dei due, sto usandoo come parametro il nome intero dell'oggetto netstream...


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.