Esiste un modo per verificare se esistono nella cache di explorer dei file swf ?
E in tal caso eseguire un animazione.
Mi servirebbe uno script come aggiunta per non fare effettuare ogni volta il preloading di tali file.
Esiste un modo per verificare se esistono nella cache di explorer dei file swf ?
E in tal caso eseguire un animazione.
Mi servirebbe uno script come aggiunta per non fare effettuare ogni volta il preloading di tali file.
Se gli .swf sono già in cache, il preload non viene eseguito direttamente, non è necessario mettere codice aggiuntivo
Sempre che io abbia capito bene la richiesta![]()
Non e` vero, guarda www.jeansartdesign.com
lo carichi la prima volta ed effettua il preload, la seconda volta che lo carichi effettua comunque il preload perche` carica di nuovo i filmati ma piu` velocemente.
Il codice principale e` questo:
stop();
// crea i movieclip vuoti
this.createEmptyMovieClip("primo",1);
this.createEmptyMovieClip("secondo",2);
this.createEmptyMovieClip("terzo",3);
//rende invisibile la barra e i valori in byte
this.barra._visible = false;
this.caricati._visible = false;
this.totali._visible = false;
// carica i file nei movie clip
this.primo.loadMovie("home.swf");
this.secondo.loadMovie("modelli.swf");
this.terzo.loadMovie("info.swf");
this.onEnterFrame = function() {
var car = this.primo.getBytesLoaded();
var tot = this.primo.getBytesTotal();
var car2 = this.secondo.getBytesLoaded();
var tot2 = this.secondo.getBytesTotal();
var car3 = this.terzo.getBytesLoaded();
var tot3 = this.terzo.getBytesTotal();
var cars = car+car2+car3;
var tots = tot+tot2+tot3;
var larghezza = 100;
if (cars>0 and tots>0) {
if (cars != tots) {
//rende visibile la barra e i valori in byte
this.barra._visible = true;
this.caricati._visible = true;
this.totali._visible = true;
// rende invisibili i movieclip
this.primo._visible = false;
this.secondo._visible = false;
this.terzo._visible = false;
var caricato = Math.round((cars/tots)*100);
//Apro l'oggetto String
txtCar = String(cars);
txtTot = String(tots);
//Allungo la barra e la posiziono in modo fisso sull'asse X
setProperty("barra", _xscale, (caricato*larghezza)/100);
// setProperty("barra", _x, 326.0);
}
else
{
delete this.onEnterFrame;
// ricarica il movie (tanto e' gia` nella cache)
_root.loadMovie("home.swf");
}
}
};
Mi rimane da controllare se i movie .swf sono gia` nella cache del browser e in tal caso passo ad una funzione che carica unicamente il file home.swf nessun super esperto a riguardo ?
Non so dove sbattere la testa![]()
![]()
Originariamente inviato da madone
Non e` vero, guarda www.jeansartdesign.com
lo carichi la prima volta ed effettua il preload, la seconda volta che lo carichi effettua comunque il preload perche` carica di nuovo i filmati ma piu` velocemente.
Ho controllato...la prima volta vedi il preload, la seconda si vede per circa 1 microsecondo...com'è normale che sia.
Ribadisco, non è necessario alcun codice, se il filmato è in cache il preload non si vede, o si vede per pochissimo.
Mi pare inutile stare a cercare un codice per controllare se il file esiste, quando il preload già di per se si vedrebbe al massimo per 1 secondo (anzi, la maggior parte delle volte non si vede nemmeno per quel secondo...)
Certo che se prendi come esempio UN solo sito con un file piuttosto grande non puoi avere una visione completa di come funziona la cosa.
Se vai ad esempio su www.marcoleonardi.com vedrai che il preload dell'intro lo vedi la prima volta, ma se fai 'aggiorna' alla seconda volta il preload non lo vedrai minimamente, proprio xkè il filmato è già sul tuo pc e non dev'essere scaricato.
Se poi non ti fidassi ancora, puoi anche fare una ricerca sul forum, vedrai che troverai espresso sempre il concetto che ti ho detto nel post precedente.
Le mie impostazioni del browser evidetemente non sono come le tue.
Ok l'importante e` che chi visita il sito non debba vedere il preload di nuovo.
:gren: