有人建议。
我在CS5中使用AS3有一个FLA,我可以使用查询字符串来传递变量而不是FlashVars(我不是同时尝试使用它们)。
我下面的HTML添加了SWF:
<!-- Extract from http://www.[domain]/flash.html -->
<div id="flashContent">
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="700" height="600" id="SWF" align="middle">
<param name="movie" value="http://[subdomain].[domain]/swf.swf?var1=var1value"> <!-- This is working -->
<param name="FlashVars" value="var1=var1value"> <!-- This is NOT working -->
<param name="quality" value="high">
<param name="bgcolor" value="#ffffff">
<param name="play" value="true">
<param name="loop" value="true">
<param name="wmode" value="window">
<param name="scale" value="showall">
<param name="menu" value="true">
<param name="devicefont" value="false">
<param name="salign" value="">
<param name="allowScriptAccess" value="sameDomain">
<!--[if !IE]>-->
<object type="application/x-shockwave-flash" data="http://[subdomain].[domain]/swf.swf?var1=var1value" width="700" height="600">
<param name="movie" value="http://[subdomain].[domain]/swf.swf?var1=var1value"> <!-- This is working -->
<param name="FlashVars" value="var1=var1value"> <!-- This is NOT working -->
<param name="quality" value="high">
<param name="bgcolor" value="#ffffff">
<param name="play" value="true">
<param name="loop" value="true">
<param name="wmode" value="window">
<param name="scale" value="showall">
<param name="menu" value="true">
<param name="devicefont" value="false">
<param name="salign" value="">
<param name="allowScriptAccess" value="sameDomain">
<!--<![endif]-->
<a href="http://www.adobe.com/go/getflash">
<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>
在FLA中我有以下内容:
try {
flashVars = LoaderInfo(this.root.loaderInfo).parameters;
}catch (error:Error) {
errorBox.appendText(error.toString());
}
然后我使用传递的信息:
flashVars.var1;
正如HTML <param name="movie" value="http://[subdomain].[domain]/swf.swf?var1=var1value">
中的评论所述,但<param name="FlashVars" value="var1=var1value">
没有。
我的理解是<param name="FlashVars" value="var1=var1value">
被认为是更好的做法。是这样的,为什么,但更重要的是,任何人都可以告诉我为什么它不起作用?