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

ActionScript
Flash AS教程:图片环绕旋转动画
Flash贪吃蛇游戏AS代码翻译
Flash AS教程:旋转立方体
Flash AS3教程:ImageLoader类
Flash AS3教程:疑难杂症汇总
Flash AS3教程:类的分包处理
Flash AS3教程:Dot类
Flash游戏开发:BitmapData的使用
初学AS3的几点技巧汇总
飘雪Flash动画简单制作
Flash air制作淡入淡出窗体动画效果
Flash air制作透明雪花特效
Flash AS制作LRC歌词同步的详细教程
Flash as3:绝对坐标与相对坐标
Flash AS3用于读取LRC同步歌词的类
优化Flash Actionscript代码的三种方法
AS3的System类解决歌词中乱码问题
Flash as3嵌入中文字体的方法
Flash AS3教程:ClassLoader类
Flash AS3教程:ByteLoader类

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-01   浏览: 171 ::
收藏到网摘: 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 后面用 ? 连接也可以实现多浏览器兼容。"