我正在尝试生成<object>
标记仅嵌入代码,并且无法让Firefox沿FlashVars值传递Flash。这似乎适用于我尝试过的所有其他地方,但在Firefox中失败了。以下是我正在使用的嵌入示例:
<object type="application/x-shockwave-flash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="550" height="400" id="Main" align="middle" data="Main.swf">
<param name="movie" value="Main.swf" />
<param name="allowScriptAccess" value="always" />
<param name="allowFullScreen" value="true" />
<param name="bgcolor" value="#ffffff" />
<param name="quality" value="high" />
<param name="menu" value="false" />
<param name="FlashVars" value="foo=1" />
</object>
请注意,Flash体验确实显示在Firefox中,但是当我执行跟踪并实际运行应用程序时,无法读取值。这让我头疼了一天,我很难过。如果有人对此有任何指导,我们将非常感激。
答案 0 :(得分:3)
你试过吗
<param name="movie" value="Main.swf?foo=1" />
将参数传递给SWF的“旧学校”方式。
答案 1 :(得分:1)
我刚刚在Fx 3.6中运行了以下内容,它运行正常。我不确定你的版本为什么不起作用。它可能与无效属性有关。它位于带有doctype set的XHTML严格文档中。
<object type="application/x-shockwave-flash" data="movie.swf" width="100" height="100">
<param name="movie" value="movie.swf" />
<param name="salign" value="lt" />
<param name="flashvars" value="foo=bar" />
</object>
答案 2 :(得分:1)
在访问属性之前,请确保时间线上至少有5个帧。或者如果在代码中等待一段时间。问题是玩家有时在第一帧上没有值。之后他们会在那里。
答案 3 :(得分:1)
可能是Firefox中的Flash Player插件有不同的版本,或者花费更多时间将参数输入到swf中。尝试使用计时器或ENTER_FRAME侦听器进行延迟调用,以查看您的参数是否设置了延迟。
private function checkProgress(event : TimerEvent) : void
{
// check if loaderInfo.parameters is set
}
答案 4 :(得分:0)
我使用这个嵌入(并且是的,它包含嵌入标签)用于我的隐形MP3播放器,它随处可见:
<object style="position:fixed" id="1pixPlayer" width="1" height="1" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">
<param value="transparent" name="wmode">
<param value="1pxMp3.swf" name="movie">
<param value="always" name="allowScriptAccess">
<param name="flashvars" value="id=1&var=val&var1=val1">
<embed name="1pixPlayer" width="1" height="1" type="application/x-shockwave-flash" wmode="transparent" allowscriptaccess="always" src="1pxMp3.swf" flashvars="id=1&var=val&var1=val1"></object>
答案 5 :(得分:0)
对于Fire Fox,在Object Tag下使用EMBED TAG