Ciao a tutti,

ho un problema con un preloader effettuato con il metodo load() della classe Loader.
Il file a.swf carica il file b.swf. Durante il primo caricamento visualizzo la loadbar che si scala perfettamente seguendo l'evento "progress", e poi viene rimossa al "complete".
Unico problema è che al refresh della pagina html che contiene a.swf, il browser recupera dalla cache il file b.swf che si visualizza in un baleno (e fin qui tutto ok), ma mi mostra per una frazione di secondo ancora la mia preloadbar. E' possibile risolvere questo problema o non c'è modo?

A questo indirizzo potete vedere il test che ho fatto:

http://www.klauzz.com/test

E qui di seguito il codice che ho utilizzato nel file a.swf.

codice:
var loader:Loader;// The asset loader
var mainpreloader:MainPreloader;//The preloader instance

//Starts the loading process
photoViewer();

function photoViewer() {
	// Create the Loader
	createLoader();
	// Create the progress indicator
	createProgressIndicator();
	// Start the load operation
	load(new URLRequest("externalfile.swf"));
}

function createLoader():void {
	// Create the Loader
	loader = new Loader();

	// Register for events
	loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressListener);
	loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeListener);
	loader.contentLoaderInfo.addEventListener(Event.INIT, initListener);

}

function createProgressIndicator():void {
	mainpreloader = new MainPreloader();
	mainpreloader.name="mainpreloader";
	mainpreloader.loadBar.width=0;
	mainpreloader.x = 600 / 2 - (mainpreloader.width / 2);
	mainpreloader.y = 300 / 2 - (mainpreloader.height / 2);
}

function load(urlRequest:URLRequest):void {
	loader.load(urlRequest);
	if (! contains(mainpreloader)) {
		addChild(mainpreloader);
	}
}

// Listener invoked whenever data arrives
function progressListener(e:ProgressEvent):void {
	// Update progress indicator. 
	var percent:int=Math.round(e.bytesLoaded/e.bytesTotal*100);
	mainpreloader.loadBar.width=percent;
}

function initListener(e:Event):void {
	addChild(loader.content);// Add loaded asset to display list
}

// Listener invoked when the asset has been fully loaded
function completeListener(e:Event):void {
	// Remove progress indicator.
	removeChild(mainpreloader);
}
Klauzz