Originariamente inviato da acweb-2004
No! comunque non funziona anche in questo modo, però qualche cosa è cambiato in quanto, mentre prima non vedevo nulla, ora riesco a vedere uno sfondo che metto all'inizio del filmato che carico, poi più nulla del resto.
Strano, ho fatto un test seguendo le tue indicazioni e mi funziona perfettamente...
Originariamente inviato da acweb-2004
Comunque vorrei approfittare della tua disponibilità per sottoporti il problema iniziale che mi ha condotto a dover scegliere di caricare dinamicamente il file swf.
In una pagina web del mio sito ho una galleria d'immagini fatta con flash (come in molte altre pagine); però in questa oltre a caricare flash con AC_RunActiveContent presento altre immagini con lightbox2. L'inconveniente è che i due Js sono incompatibili fra loro, se chiudo una foto presentata con lightbox2 mi parte il filmato flash.
Per ovviare a ciò ho sostituito AC_RunActiveContent con swfobject.js. Questo presenta l'inconveniente che mi visualizza il filmato solo a fine caricamento dello stesso, ed in presenza di file .swf di dimensioni elevate si rimane sulla pagina senza che nulla accada (il preload presente non si attiva) per un certo tempo che dipende dalla velocità di connessione.
Ho cercato di ovviare a questo con i parametri presenti nel Jswfobject.js ma purtroppo non sono venuto a capo di nulla. Tu conosci per caso questo strumento??? mi sai suggerire????
grazie
ciao
augusto
Sì, la cosa da fare in questi casi (io lo faccio sempre, ormai per abitudine) è di far caricare ad un altro filmato "contenitore" quello principale, quindi usare un preload per il filmato principale, dentro quello contenitore, e alla fine del caricamento dentro un Loader bisogna sostituire la timeline del filmato contenitore con quella del filmato principale, rendendolo "root" a tutti gli effetti. Scusa il giro di parole, ma non mi è facile spiegarloin maniera semplice.
Io utilizzo questa classe:
Codice PHP:
package {
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.net.URLRequest;
public classe StagePreload extends Sprite {
public function StagePreload () {
L = new Loader();
L.contentLoaderInfo.addEventListener (ProgressEvent.PROGRESS, progress);
L.contentLoaderInfo.addEventListener (Event.INIT, init);
L.load (new URLRequest("filmato_principale.swf"));
}
private function progressHandler (evt:ProgressEvent=null):void {
// azioni per il preload grafico
trace ((Math.floor((evt.bytesLoaded/evt.bytesTotal)*100))+"%");
}
private function initHandler (evt:Event=null):void {
L.contentLoaderInfo.removeEventListener (ProgressEvent.PROGRESS, progress);
L.contentLoaderInfo.removeEventListener (Event.INIT, init);
stage.addChildAt (L.content, stage.numChildren-1);
stage.removeChild(this);
}
}
}