• User Newbie

    preload percentuale di più swf in cache

    Innanzitutto un saluto, mi sono appena iscritto al vostro forum dopo averlo letto svariati giorni e sono in cerca di un aiuto.

    La cosa è molto semplice, ma ancora non riesco a trovare la giusta via:

    io ho un sito composto da più swf, così come vuole la tradizione, il problema è che "attaccando" gli swf con loadmovie, non si legano graficamente come vorrei.

    Cerco in breve il modo di far caricare al browser nella sua cache tutti gli swf che compongono il sito (cmq piccoli) facendomi però vedere un preloader percentuale prima di partire con il primo filmato.

    vi posto ciò che ho trovato, che si avvicina a quello che cerco, ma purtroppo non funziona.

    Qualcuno di voi riesci ad aiutarmi?
    Grazie

    root.createEmptyMovieClip("placeholder", 1);
    var mioElenco:Array = new Array("scena1.swf", "scena2.swf", "scena3.swf");
    _root.i = 0;
    function preloadMovie() {
    car = placeholder.getBytesLoaded();
    tot = placeholder.getBytesTotal();
    per = int(car*100/tot);
    msg = "sto caricando "+mioElenco[_root.i]+", avanzamento: "+per+"%.";
    if (per == 100 && tot>0) {
    clearInterval(preloadInterval);
    _root.i++;
    if (i<mioElenco.length) {
    startDownload();
    } else {
    //unloadMovie("placeholder");
    msg = "tutti i filmati sono stati caricati.";
    }
    }
    }
    function startDownload() {
    placeholder.loadMovie(mioElenco[_root.i]);
    preloadInterval = setInterval(preloadMovie, 10);
    }
    startDownload();

    ////--------------------------------------------------
    L'Array mioElenco deve contenere i nomi dei file da caricare, ed è l'unica cosa che devi personalizzare.

    In pratica carica i filmati nell'ordine in cui li hai scritti nell'Array, appena un filmato è stato completamente caricato viene subito cancellato e parte il download successivo.
    Alla fine non avrai nessuno dei tuoi filmati sulla scena ma essendo già stati scaricati tutti si troveranno nella cache del computer in uso, quando ti serviranno potrai richiamarli con un semplice loadMovie ma invece che essere caricati dal server, saranno caricati dalla cache istantaneamente.

    Inoltre c'è un'utilissima variabile msg che contiene un messaggio che puoi visualizzare durante il download, il messaggio è del tipo:

    sto caricando scena1.swf, avanzamento: 34%.

    Se posizioni sulla scena una casella di testo dinamico e gli associ questa variabile i tuoi visitatori sapranno cosa sta succedendo invece di aspettare davanti a una schermata ferma.