In AS2 war es üblich, Variablen beim Einbinden der SWF-Datei zu deklarieren, damit deren Werte zur Laufzeit zur Verfügung stehen. So kann man beispielsweise einen Player erstellen, der das Video, die SWF-Datei oder den Sound aus der Variablen erhält, welche auf der Html Seite definiert ist. Diese Methode wird in meinen AS2 Tipps erklärt. Sämtliche Parameter, die man vergeben kann, werden bei Adobe aufgelistet.
Auf folgender Seite wird das für Actionscript 3 schön erklärt http://www.dimitrij-pankratz.de/flashvars-mit-as3/ Danke dafür.
Im folgenden habe ich mal den gesamten Quelltext der Html Seite eingefügt. Die SWF-Datei wurde mit der SWFObject oder Deconcept Methode eingebettet. Mittlerweile gibt es schon Version 2. Dort ist auch ein kleiner Html-Generator enthalten welcher den Code zum Einbetten generiert. http://code.google.com/p/swfobject/
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.registerObject("myFlashContent", "9.0.0");
</script>
</head>
<body>
<div>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="350" height="80" id="myFlashContent">
<param name="movie" value="flashvars.swf" />
<param name="flashvars" value="movie=meinMovie.swf&thema=Mein Thema" />
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="flashvars.swf" width="350" height="80">
<param name="flashvars" value="movi=meinMovie.swf&thema=Mein Thema" />
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflashplayer">
<img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" />
</a>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
</div>
</body>
</html>
An zwei Stellen werden die flashvars definiert. Nach dem Schema "variablenname=wert" Weitere Variablen werden mit kaufmännischem & angehängt. "var1=wert1&var2=wert2"
Actionscript 3 Code der Fla Datei siehe unten:
Mittels einer for-in Schleife werden alle flashvars-Variablen ausgelesen. Die for-in-Schleife ist in eine try-catch-Funktion eingebunden. Unter catch gibt man die Anweisungen ein, die ausgeführt werden, wenn der Versuch nicht von Erfolg gekrönt war.
try {
var key:String;
var val:String;
var titel:String;
var moviUrl:String;
var aniUrl:String;
var params:Object = LoaderInfo(this.root.loaderInfo).parameters;
for (key in params) {
val = String(params[key]);
}
titel=params["thema"];
moviUrl=params["movi"];
anzeige1.text=titel;
anzeige2.text=moviUrl;
} catch (error:Error) {
moviUrl="alternativ.swf";
titel="Alternative";
anzeige1.text="Error";
anzeige2.text="";
}