0
点赞
收藏
分享

微信扫一扫

网页中插入FLASH(swf文件)的html代码【一】


HTML向FLASH传参数的三种方法



原文来处



一、SWF地址后使用参数传递符“?”,



HTML页面中插入SWF文件最常用的就是使用Object标签和Embed标签结合的方式,这也是Adobe的推荐方式:



<object classid="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来传递变量:



<object classid="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也不例外,下面是Flash Player的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 条评论