Originariamente inviato da perseogiugno75
ancora problemi
ho provato ad impostare l'azione trace(car); per visualizzare l'andamento dei byte caricati.
nella finestra di output visualizzo un moltiplicarsi all'infinito dei byte caricati e, di conseguenza, man mano che il preload avanza, il numero di byte aumenta a dismisura e il preload rallenta progressivamnete fino pressoche a fermarsi
è vero, che stupido! questo non l'avevo proprio considerato... il fatto è che prima le variabili "car" e "tot" venivano continuamente rigenerate partendo da 0... quindi non c'era la somma tra i vari clip da caricare
ora invece car viene sempre aumentato perchè invece di ripartire da 0 nel calcolo presegue ad aumentare esponenzialmente ad ogni passaggio
beh... non c'è due senza tre... proviamo una via di mezzo
codice:
function onLoadFinished() {
// azioni al caricamento completato
}
function summedPreload(target, name, numOfLoad) {
var car = 0;
var perc = 0;
for (var i = 0; i<=numOfLoad; i++) {
car += target[name+i.toString()].getBytesLoaded();
tot += target[name+i.toString()].getBytesTotal();
}
perc = Math.floor((car/tot)*100);
if (!isNaN(perc)) {
// azioni di visualizzazione del preload
}
if (car>=tot && tot>perc && perc == 100) {
clearInterval(a);
onLoadFinished();
}
}
for (i=0; i<=29; i++) {
this.createEmptyMovieClip("img"+i, i);
this["img"+i].loadMovie("big/"+i+".jpg");
}
var tot = 0;
a = setInterval(summedPreload, 200, this, "img", 29);
scusa se vado a tentoni ma non sono molto concentrato oggi