当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > 将FlashVars写在JS函数中,实现变量更新与后台同步

ActionScript
FLASH 3D相册之利用BitmapData类制作
Flash 脚本游戏开发教程 第一课
Flash 脚本游戏开发教程第二课
Flash 脚本游戏开发教程第三课
Flash 脚本游戏开发教程第四课
Flash 脚本游戏开发教程第五课
Flash 脚本游戏开发教程第六课
Flash 脚本游戏开发教程第七课
Flash 脚本游戏开发教程第八课
Flash AS实现的蝌蚪摆尾动画的教程
从基础开始深入学Flash AS3教程(4)(译文)
从基础开始深入学Flash AS3教程(5)(译文)
从基础开始深入Flash AS3教程(2)(译文)
从基础开始深入学Flash AS3教程(3)(译文)
Flash AS3对单个图片进行角色动作化处理
从基础开始深入Flash AS3教程(1)(译文)
Flash教程:if条件语句的用法
Flash AS教程:_visible属性的详细讲解
Flash AS教程:图片环绕旋转效
Flash教程:trace()的使用

ActionScript 中的 将FlashVars写在JS函数中,实现变量更新与后台同步


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-01   浏览: 166 ::
收藏到网摘: n/a

定义 JS 函数,例如名为 GetSwfUrl():

<script type="text/javascript">
function GetSwfUrl()
{
var pics1 = parseInt(Math.random() * 5) + 1;
var pics2 = parseInt(Math.random() * 5) + 1;
myFlashId.FlashVars = "pic01Num="+pics1+"&pic02Num="+pics2;
}
</script>

html 中 Flash 段:
<param name="FlashVars" value="">

在 AS 中用 getURL("javascript:GetSwfUrl()") 即可实现与后台的实时数据更新。只是此方法在 FF 下不能兼容,不知道 myFlashId.FlashVars = "pic01Num="+pics1+"&pic02Num="+pics2 这样的写法是不是不合 FF 标准,还请有经验的朋友不吝指教。

***************

然而以下的方法将 FlashVars 参数直接写在 Flash 代码段内却可以实现多浏览器兼容。

JS 部分:
<script type="text/javascript">
var pics1 = parseInt(Math.random() * 5) + 1;
var pics2 = parseInt(Math.random() * 5) + 1;
</script>

Flash 段:
<param name="FlashVars" value="pic01Num='+pics1+'&pic02Num='+pics2+'">
<embed FlashVars="pic01Num='+pics1+'&pic02Num='+pics2+'">

或直接赋值:
<param name="FlashVars" value="pic01Num=3&pic02Num=5">
<embed FlashVars="pic01Num=3&pic02Num=5">

***************

另外,将变量写在 .swf 后面用 ? 连接也可以实现多浏览器兼容。"