HTML页面中插入SWF文件

HTML向FLASH传参数的三种方法
一、SWF地址后使用参数传递符“?”,
HTML页面中插入SWF文件最常用的就是使用Object标签和Embed标签结合的方式,这也是Adobe的推荐方式:
<objectclassid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0"width="400" height="300" id="flashvars"align="center">
<param name="allowscriptAccess"value="sameDomain" />
<param name="movie"value="test.swf?xname=xvalue&xname2=xvalue2"/>
<param name="quality" value="high"/><param name="bgcolor"value="#ffffff" />
<embed quality="high" bgcolor="#ffffff"width="400"src="test.swf?xname=xvalue&xname2=xvalue2"height="300" allowScriptAccess="never" allowNetworking="internal" autostart="0" name="flashvars"align="center" type="application/x-shockwave-flash"pluginspage="http://www.macromedia.com/go/getflashplayer"/>
</object>
swf地址后面通过类似于URL中GET方式传参的方法来个SWF传递参数,例如上面代码在页面完全加载完毕时,它已经给SWF文件写入了两个变量:uid=12和uname=vsky。
二、FlashVars传递
  你可以查阅FLASH帮助文档来看FlashVars的官方定义。其实在HTML语法中,这是一个被很多新手所忽视的属性,同样以上面的参数为例,下面用FlashVars来传递变量:
<objectclassid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0"width="400" height="300" id="flashvars"align="center">
<param name="allowscriptAccess"value="sameDomain" />
<param name="movie" value="demo.swf"/>
<param name="FlashVars"value="xname=xvalue&xname2=xvalue2"/>
<param name="quality" value="high"/><param name="bgcolor"value="#ffffff" />
<embed src="demo.swf"FlashVars="xname=xvalue&xname2=xvalue2"allowScriptAccess="never" allowNetworking="internal" autostart="0" quality="high" bgcolor="#ffffff"width="400" height="300" name="flashvars" align="center"type="application/x-shockwave-flash"pluginspage="http://www.macromedia.com/go/getflashplayer"/>
</object>
跟方式一相同,它也是直接给FLASH里添加了这两个变量。推荐使用此方式,结合SWFObject的使用,使用FlashVars来传递变量有很多好处,例如代码清楚,轻易治理,浏览其兼容,符合标准。
三、JS控制
  对于客户端页面中的资源,JS通过DOM结构来控制它们可以说是随心所欲的,FLASH也不例外,下面是FlashPlayer的Javascript方法一览表:
Play() —————————————- 播放动画
StopPlay()————————————停止动画
IsPlaying()———————————– 动画是否正在播放
GotoFrame(frame_number)—————- 跳转到某帧
TotalFrames()——————————- 获取动画总帧数
CurrentFrame()——————————回传当前动画所在帧数-1
Rewind()————————————-使动画返回第一帧
SetZoomRect(left,top,right,buttom)——-放大指定区域
Zoom(percent)——————————改变动画大小
Pan(x_position,y_position,unit)————使动画在x,y方向上平移
PercentLoaded()—————————-返回动画被载入的百分比
LoadMovie(level_number,path)———– 加载动画
TGotoFrame(movie_clip,frame_number)- movie_clip跳转到指定帧数
TGotoLabel(movie_clip,label_name)—— movie_clip跳转到指定标签
TCurrentFrame(movie_clip)————— 回传movie_clip当前帧-1
TCurrentLabel(movie_clip)—————–回传movie_clip当前标签
TPlay(movie_clip)—————————播放movie_clip
TStopPlay(movie_clip)———————-停止movie_clip的播放
GetVariable(variable_name)—————–获取变量
SetVariable(variable_name, variable_value)
TCallFrame(movie_clip,frame_number)—call指定帧上的action
TCallLabel(movie_clip,label)—————-call指定标签上的action
TGetProperty(movie_clip,property)——–获取movie_clip的指定属性
TSetProperty(movie_clip,property,number)———-设置movie_clip的指定属性
在这里我们只需要使用的是SetVariable方法,JS通过调用此方法能够直接更改SWF中的变量值。首先我们需要定义插入的SWF的ID,例如id为VskyDemo,那么我们可以通过下面的JS语句来完成SWF内部变量的置:
document.getElementByIdx_x("xswf").SetVariable("xname","xvalue");//不同浏览器获取FLASH对象方法不同
变量名xname可以作为已声名的变量直接在FLASH内使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值