a fare si può fare ma se poi i tuoi swf ci mettono un po' a caricarsi tu corri il rischio che chi guarda il tuo sito veda una pagina bianca per un po'
comunque adesso ti preparo il codice (dando per scontato che gli swf esterni sono piccoli)
a fare si può fare ma se poi i tuoi swf ci mettono un po' a caricarsi tu corri il rischio che chi guarda il tuo sito veda una pagina bianca per un po'
comunque adesso ti preparo il codice (dando per scontato che gli swf esterni sono piccoli)
bianca?? e mettere un preload in modo da intrattenere un attimo il visitatore??Originariamente inviato da Stormy
a fare si può fare ma se poi i tuoi swf ci mettono un po' a caricarsi tu corri il rischio che chi guarda il tuo sito veda una pagina bianca per un po'
comunque adesso ti preparo il codice (dando per scontato che gli swf esterni sono piccoli)
altrimenti tu cosa mi consigli??
allora prima di tutto i pulsanti non devono essere simboli pulsanti ma simboli movie clip (questo perchè ho messo un controllo per evitare che si riclicchi sullo stesso pulsante quando quella sezione è già stata aperta)
se preferisci metti i pulsanti in un movie clip, altrimenti puoi usare direttamente dei movie clip perchè con flash MX si possono attribuire comandi tipo on release anche ai movie clip
nel pulsante
on (release) {
if(_root.loading !=this){
_root.fadeOut("esterno1.swf","esterno2.swf",this);
_root.loading=false
}
}
negli altri pulsanti lo stesso codice ovviamente cambiando il nome dei filmati esterni
nel frame
url1=url2=this._url
function fadeOut(est1, est2,calling) {
this.onEnterFrame = function() {
if (this._alpha>0) {
this._alpha -= 10;
} else {
if (mc._url != url1 && mc2._url != url2) {
url1=mc._url
url2=mc2._url
fadeIn();
} else {
if(!loading){
mc.loadMovie(est1)
mc2.loadMovie(est2)
loading=calling
}
}
}
};
}
function fadeIn() {
this.onEnterFrame = function() {
if (this._alpha<100) {
_alpha += 10;
} else {
this.onEnterFrame = null;
}
};
}
ho usato _url e non un preloader che controllasse che tutti gli swf fossero stati caricati proprio per evitare la pagina bianca per un lungo periodo, con _url appena il filmato esterno comincia a caricarsi riappare l'intero stageOriginariamente inviato da inside1
bianca?? e mettere un preload in modo da intrattenere un attimo il visitatore??
puoi mettere il preloader o nei filmati esterni oppure fare un preloader dei vari filmati esterni nella pagina principale
io per fare prima ho fatto caricare solo due filmati esterni se te ne servono di più devi inserire più parametri
nel caso che anche così (provandolo online) la pagina bianca (o nera, insomma del colore del tuo sfondo) appaia troppo a lungo, dimmelo che facciamo in un altro modo
si lo so solitamente utilizzo gli MC per creare i pulsanti in quanto ho maggiori libertà.Originariamente inviato da Stormy
allora prima di tutto i pulsanti non devono essere simboli pulsanti ma simboli movie clip (questo perchè ho messo un controllo per evitare che si riclicchi sullo stesso pulsante quando quella sezione è già stata aperta)
se preferisci metti i pulsanti in un movie clip, altrimenti puoi usare direttamente dei movie clip perchè con flash MX si possono attribuire comandi tipo on release anche ai movie clip
nel pulsante
on (release) {
if(_root.loading !=this){
_root.fadeOut("esterno1.swf","esterno2.swf",this);
_root.loading=false
}
}
}
non capisco una cosa però!! prima mi avevi detto di caricare gli swf esterni all'interno di un MC ma non capisco in questo codice dove si caricano e dove è il codice per caricarli, io non ho mai usato url se me lo spiegheresti gentilmente o se avessi la possibilità di farmi vedere un filmatino di prova, sempre che non ti porti via del gran tempo.
Merci![]()
dammi la mail che ti mando la prova che ho fatto io
i filmati esterni si caricano qua
if(!loading){
mc.loadMovie(est1)
mc2.loadMovie(est2)
loading=calling
_url è l'url del swf, se carichi su un movie clip un filmato esterno il movie clip avrà l'url dell'swf esterno e non più quello dell'swf su cui si trova
ciao ti ho mandato una mail al primo indirizzo che hai nelle firme
ciao ciao
te lo commento
on (release) {
if(_root.loading !=this){
//la variabile loading contiene il nome
//del movie clip che è stato cliccato precedentemente
//se quindi loading non è uguale al movie clip su cui si clicca va //avanti
_root.fadeOut("esterno1.swf","esterno2.swf",this);
//fa partire la funzione e gli manda come
//parametri i nomi dei filmati esterni e il nome istanza del movie //clip stesso
_root.loading=false
//rende falsa la variabile loading per fare avvenire
//il loadmovie
}
}
url1=url2=this._url
//all'inizio prima che qualsiasi filmato esterno sia //stato caricato i movie clip avranno l'url del filmato principale, per
//cui questo viene inserito nelle due variabili che servono per fare
//il confronto
function fadeOut(est1, est2,calling) {
this.onEnterFrame = function() {
//fa avvenire l'enterFrame dello stage
if (this._alpha>0) {
this._alpha -= 10;
} else {
if (mc._url != url1 && mc2._url != url2) {
//se l'url dei due movie clip è diverso da quello precedente
url1=mc._url
url2=mc2._url
//registra i due nuovi url su cui fare la verifica
//richiama la seconda funzione che farà apparire
//lo stage
fadeIn();
} else {
if(!loading){
//loading serve a due cose, primo per registrare
//quale movie clip è stato cliccato precedentemente e secondo
//per far avvenire il loadmovie una sola volta
mc.loadMovie(est1)
mc2.loadMovie(est2)
//carica i filmati esterni, se i filmati sono parecchi
//si può usare un for per non scrivere troppe righe di codice
loading=calling
}
}
}
};
}
function fadeIn() {
this.onEnterFrame = function() {
if (this._alpha<100) {
_alpha += 10;
} else {
this.onEnterFrame = null;
}
};
}
non so se ti è arrivata la mia mail in quanto ci sono problemi con i server della telecom cmq la mia mail è questa exoddus@galactica.it
ah mille grazie per la spiegazione, con l' esempio capirò meglio, spero che si con gli swf esterni che si caricano all' interno di un MC vuoto .
ciaooo