Flash da solo non può aprire finestre di popup, bensì pagine principali del browser, tramite:
getURL(“pagina.html”, “window”);
Per aprire una popup, si deve appoggiare al supporto javascript della pagina html che lo incorpora. Questo viene fatto in due modi:
1. inserendo una funzione javascript nella pagina html, e richiamandola dal filmato in flash:
getURL(“javascript:funzione(parametri)”);
2. generando la funzione direttamente da flash, con questa struttura:
getURL(“javascript:window.open(‘pagina.html’,’titolo’,’width=400,height=300′);void(0);”);
visualizza il codice in un file di testo
Fondamentale, è quel void(0) alla fine, che impedisce alla pagina contenente il filmato di diventare bianca.Consideriamo solo il secondo metodo (tutta la funzione generata da flash), e vediamo due modi generali e validi in ogni caso.
1° metodo: visualizza il codice in un file di testo
Nel primo frame della timeline principale incolliamo:
Movieclip.prototype.popup = function(nome,titolo,lar,alt,x,y,feat){
getURL(“javascript:window.open(‘&;quot; nome +”‘,’” + titolo + “‘,’width=” + lar + “,height=” + alt + “,screenX=” + x + “,left=” + x + “,screenY=” + y + “,top=” + y +”,” + feat + “‘);void(0);”);
&Nbsp;}
e apriamo la popup, ad esempio tramite pulsante, con:
on(release) {
popup(‘test.html’,’titolo’,400,300,50,50,’status=yes’);
}
Con questo metodo, indichiamo: nome della pagina da lanciare, titolo sulla barra, larghezza, altezza, posizione sull’asse delle X, posizione sull’asse delle Y, eventuali attributi. Eventuali, nel senso che si può omettere la parte finale, e scrivere:
on (release) {
popup(‘test.html’,’titolo’,400,300,50,50);
}
2° metodo: visualizza il codice in un file di testo
Nel primo frame della timeline principale incolliamo:
Movieclip.prototype.centra = function (nome,titolo,lar,alt,feat){
getURL(“javascript:var x = Math.round((screen.width/2)-(” + lar + “/2));var y=((screen.height/2)-(” + alt + “/2));window.open(‘” + nome + “‘,’” + titolo + “‘,’width=” + lar + “,height=” + alt + “,screenX=’ + x + ‘,left=’ + x + ‘,screenY=’ + y + ‘,top=’ + y + ‘,” + feat + “‘);void(0);”);
}
e apriamo la popup, ad esempio tramite pulsante, con:
on (release) {
centra(‘test.html’,’titolo’,400,300,’status=yes’);
}
Con questo metodo, indichiamo: nome della pagina da lanciare, titolo sulla barra, larghezza, altezza, eventuali attributi. Eventuali, nel senso che si può omettere la parte finale, e scrivere:
on (release) {
centra(‘test.html’,’titolo’,400,300);
}
Questa funzione, serve a lanciare la nuova finestra centrata nello schermo, indipendentemente dalla risoluzione del monitor dell’utente.
3° metodo: visualizza il codice in un file di testo
Da utilizzare con FlashMX. Nel primo frame della timeline principale incolliamo:
Movieclip.prototype.centra = function (nome,titolo,lar,alt,feat){
var w = System.capabilities.screenResolutionX/2;
var h = System.capabilities.screenResolutionY/2;
var x = Math.round(w-(lar/2));
var y = Math.round(h-(alt/2));
getURL(“javascript:window.open(‘”+ nome + “‘,’” + titolo + “‘,’width=” + lar + “,height=” + alt + “,screenX=” + x + “,left=” + x + “,screenY=” + y + “,top=” + y + “,” + feat + “‘);void(0);”;
}
e apriamo la popup con:
on(release){
centra (‘test.html’,’mia’,700,300,’status=yes’);
}
Il paramentro finale, feat, rappresenta appunto gli attributi della finestra. Non scrivendo niente, la popup non avrà alcuna barra ne alcun menu. Scrivendo:
on(release){
centra(‘test.html’,’mia’,700,300,‘status=yes’);
}
avremo la barra di stato, scrivendo:
on(release){
centra(‘test.html’,’mia’,700,300,‘status=yes,toolbar=yes’);
}
avremo la barra di stato e la tollbar, e così via.