Over welke variabelen heb ik het?Je kan in het adres/pad van de swf externe variabelen of waardes mee geven.
Dit gebeurd veelal via flashVars of in de url.
Via de urlIn je webpagina gebruik je een code om je swf te tonen.
Het pad naar de swf wordt gebruikt in de embed en object tags
voorbeeldcode
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"
width="550"
height="400"
id="voorbeeld"
align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="voorbeeld.swf?eenVariable=hallo&tweedeVariable=Jan" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="voorbeeld.swf?eenVariable=hallo&tweedeVariable=Jan"
quality="high"
bgcolor="#ffffff"
width="550"
height="400"
name="voorbeeld"
align="middle"
allowScriptAccess="sameDomain"
allowFullScreen="false"
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
Je ziet in de paden naar de swf achter de extentie een vraagteken staan, met daarachter de variabele(n).
Via flashVarsVia flashVars gaat dit bijna op dezelfde manier, zie het voorbeeld hieronder:
code
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"
width="550"
height="400"
id="voorbeeld"
align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="voorbeeld.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<param name=FlashVars value="eenVariable=Hallo&tweedeVariable=jan" />
<embed src="voorbeeld.swf"
quality="high"
bgcolor="#ffffff"
width="550"
height="400"
name="voorbeeld"
align="middle"
allowScriptAccess="sameDomain"
allowFullScreen="false"
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer"
FlashVars value="eenVariable=Hallo&tweedeVariable=jan" />
</object>
sidenoteAls je de html gebruikt die flash cs3 zelf output, dan moet je in het javascript gedeelte ook de flashvars meegeven
code
AC_FL_RunContent(
<!-- hoop code hier-->
'FlashVars', 'eenVariable=hallo&tweedeVariable=Jan'
); //end AC code
Ophalen in flashNu we weten hoe we deze variablen kunnen geven aan flash, moeten we ze nog hoe ze te gebruiken in flash.
In actionscript 2 ging dit heel simpel door gewoon de variablenaam te tracen:
actionscript code//as2
trace("eenVariable is "+eenVariable); //output hallo
trace("tweedeVariable is "+tweedeVariable); //output Jan
In actionscript 3 gaat het als volgt:
actionscript code//as3
trace("eenVariable is "+root.loaderInfo.parameters.eenVariable); //output hallo
trace("tweedeVariable is "+root.loaderInfo.parameters.tweedeVariable); //output Jan
Als er geen variable meegegeven word, een "default" waarde gevenAls er op een of andere manier geen variable in de url of flashVar word meegegeven, dan
kan je een standaard waarde geven op onderstaande manier:
actionscript codevar eenVariable:String;
root.loaderInfo.parameters.eenVariable == undefined ? eenVariable = "goedendag" : eenVariable = root.loaderInfo.parameters.eenVariable;
trace(eenVariable);
//output "hallo" als eenVariable wordt meegegeven via flashVasr of in de url
//als deze variable niet werd meegegeven, dan is de output "goedendag"
extraZo, nu we weten hoe we met url variabelen kunnen werken, wil ik jullie natuurlijk niet onthouden het meest geweldige hulpmiddel op flash en browser gebied aller tijden.
Tijdens de development fase ben je natuurlijk wel benieuwd naar welke variabelen er wel of niet gedeclareerd worden.
Je kan natuurlijk een tydelijk tekstveld maken en daarin je "traces" plaatsen, maar met de
firefox flash tracer plugin kan je je traces gewoon zien in je browser!
Een must have dus!
Tot zover deze mini "tutorial".
Je bent niet ingelogged, je kan geen commentaar geven, of commentaren lezen over deze tutorial.