Abbiamo appena visto qual'è il codice di incorporamento necessario perchè la pagina html possa comunicare con il filmato. Un'altra cosa a cui prestare attenzione è il codice Javascript: per accedere al filmato dobbiamo prima di tutto identificarlo a seconda del browser in uso.
Consideriamo questo caso:
<object
classid="[...]"
codebase="[...]"
width=400 height=300 id="mainMovie">
<param name=movie value="filmato.swf">
<param name=quality value=high>
<param name=bgcolor value=#FFFFFF>
<embed
src="filmato.swf"
quality=high
bgcolor=#FFFFFF
width=400
height=300
swLiveConnect="true"
name="mainMovie"
type="application/x-shockwave-flash"
pluginspage="[...]">
</embed>
</object>
Il nostro filmato si chiama "filmato.swf", ma lo identifichiamo nella pagina con il nome "mainMovie".
La funzione Javascript tipo è questa:
<script language="JavaScript" type="text/JavaScript">
<!--
function nomeFunzione([parametri]) {
var IE = navigator.appName.indexOf("Microsoft") != -1;
var oggetto = IE ? window.mainMovie : window.document.mainMovie;
oggetto.metodoJavascript([parametri]);
}
//-->
</script>
La prima riga della funzione:
var IE = navigator.appName.indexOf("Microsoft") != -1;
crea la variabile IE. Questa variabile, avrà un valore dato dalla valutazione del tipo di browser con cui stiamo navigando: senza entrare nello specifico dell'espressione, la variabile IE sarà "true" se stiamo navigando con Internet Explorer, e "false" se stiamo navigando con un altro browser.
La seconda riga:
var oggetto = IE ? window.mainMovie : window.document.mainMovie;
valuta, tramite l'operatore ternario, il modo in cui dobbiamo identificare il filmato. Salviamo nella variabile oggetto una scorciatoia al percorso:
window.mainMovie
se stiamo visualizzando il filmato con Internet Explorer, e a:
window.document.mainMovie
se stiamo navigando con un altro browser. In questo modo, se stiamo navigando con Internet Explorer, la riga:
oggetto.metodoJavascript([parametri]);
avrà il valore di:
window.mainMovie.metodoJavascript([parametri]);
Se stiamo navigando con un altro browser, il valore:
window.document.mainMovie.metodoJavascript([parametri]);
E in questo modo abbiamo raggiunto il filmato. Il resto lo farà il singolo metodo Javascript.