【例子1】网页向flash传参数,显示视频:
下面要做的事情:做一个flash文件,可以通过网页得到参数(视频文件名)。然后显示视频,并在文本框中显示视频文件名的文字。
1、建立一个flash文件:3.fla
窗口 —> 组件 —> Video —> FLVPlayback,拖入场景。将它选中,属性面板起名:myvideo
用文本工具画一个文本框,属性面板中<实例名称>填写:mytxt,下面下拉框选择:传统文本、动态文本。
按F9,打开编程面板,写入下面代码
/* 单击以设置视频源(需要 FLVPlayback) 单击此指定的元件实例会在指定的 FLVPlayback 组件实例中播放新的视频文件。此指定的 FLVPlayback 组件实例将暂停。 说明: 1. 用您要播放新视频文件的 FLVPlayback 组件的实例名称替换以下 video_instance_name。 2. 用您要播放的新视频文件的 URL 替换以下"http://www.helpexamples.com/flash/video/water.flv"。保留引号 ("")。 */ stop(); var abc:String = loaderInfo.parameters.abc; mytxt.text=abc;//文本框中显示视频文件名 myvideo.addEventListener(MouseEvent.CLICK, fl_ClickToSetSource); function fl_ClickToSetSource(event:MouseEvent):void { //video.source = "http://www.helpexamples.com/flash/video/water.flv"; //video.source = "c.mp4"; myvideo.source = abc; }
2、再另外建一个html文件,将代码放入:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="320" height="270" id="3" align="middle"> <param name="movie" value="3.swf?abc=c.mp4" /> <param name="quality" value="high" /> <param name="bgcolor" value="#ffffff" /> <param name="play" value="true" /> <param name="loop" value="true" /> <param name="wmode" value="window" /> <param name="scale" value="showall" /> <param name="menu" value="true" /> <param name="devicefont" value="false" /> <param name="flashVars" value="abc=c.mp4"> <param name="salign" value="" /> <param name="allowScriptAccess" value="sameDomain" /> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="3.swf?abc=c.mp4" width="320" height="270"> <param name="movie" value="3.swf?abc=c.mp4" /> <param name="quality" value="high" /> <param name="bgcolor" value="#ffffff" /> <param name="play" value="true" /> <param name="loop" value="true" /> <param name="wmode" value="window" /> <param name="scale" value="showall" /> <param name="menu" value="true" /> <param name="devicefont" value="false" /> <param name="flashVars" value="abc=c.mp4"> <param name="salign" value="" /> <param name="allowScriptAccess" value="sameDomain" /> <!--<![endif]--> <a href="http://www.adobe.com/go/getflash"> <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="获得 Adobe Flash Player" /> </a> <!--[if !IE]>--> </object> <!--<![endif]--> </object>
3、再找一个mp4视频文件,放入同一个目录,起名:c.mp4
就可以看效果了
【例子2】网页向flash传参数:
1、新建文件:flashvars.fla
插入文本框两个,分别命名:pic_txt、link_txt。属性面板选择:“传统文本”、“输入文本”。
第一帧插入语句:
stop(); //var pics = "795759.jpg|795408.jpg|794502.jpg|795137.jpg|796257.jpg"; var pics = root.loaderInfo.parameters.pics; var links = root.loaderInfo.parameters.links; if (pics == undefined) { pics = "a.jpg|b.jpg|c.jpg"; } if (links == undefined) { links = "a.htm|b.htm|c.htm|d.htm|e.htm"; } //------------------------------------------------- var arr1:Array = new Array(); var arr2:Array = new Array(); arr1 = pics.split("|"); arr2 = links.split("|"); var s1 = ""; var s2 = ""; var i; for (i=0; i<arr1.length; i++) { s1 += arr1[i]; } for (i=0; i<arr2.length; i++) { s2 += arr2[i]; } pic_txt.text = s1; link_txt.text = s2;
2、新建文件:flashvars.htm
<h1>html向flash中传参数: flashvars</h1> <pre> flex接收flashvars的方法和flash不一样。 在flash中是用“root.loaderInfo.parameters”或“stage.loaderInfo.parameters”来取得传递的参数, 而在flex中则要用“Application.application.parameters”来取得。 </pre> <object type="application/x-shockwave-flash" data="flashvars.swf" width="550" height="400"> <param name='wmode' value='transparent' /> <param name='quality' value='high' /> <param name='flashvars' value='pics=aaaaaaaa.jpg|bbbbbbbbbbb.jpg|ccccccccc.jpg|dddddd.jpg|eeeeeeeeeee.jpg&links=280604237.html|index.php|279970741.html|index.php|280249307.html' /> </object>
【例子3】HTML5文件使用video标签:
HTML5的video标签,IE8及IE8以下是不支持的,如果要ie8支持,代码中加上下面一句js
<script src="http://html5media.googlecode.com/svn/trunk/src/html5media.min.js"></script> <video src="http://www.zhangxinxu.com/study/media/cat.mp4" width="320" height="240" controls="controls">浏览器不支持视频(IE8及IE8以下不支持video标签)</video>
但是要注意的是,不是什么mp4都能支持的,具体原因不详。好像和mp4 的文件格式有关,请网上查相关资料。