Flex4中将网页的参数传递给Flash,并且在Flash中读取这些参数,以及flash接收网页传过来的值

转载 2015年07月06日 18:54:36

使用flashvars将参数通过网页传递给Flash

使用Flash Builder 4创建Flex应用,会自动生成网页调用Flash,会有两种方式显示Flash,下面针对这两个方式看看如何添加参数。

方式一(swfobject):

<script type="text/javascript">
            <!-- For version detection, set to min. required Flash Player version, or 0 (or 0.0.0), for no version detection. --> 
            var swfVersionStr = "10.0.0";
            <!-- To use express install, set to playerProductInstall.swf, otherwise the empty string. -->
            var xiSwfUrlStr = "playerProductInstall.swf";
            <span style="color: #000000;">
<span style="white-space:pre">		</span>var flashvars = {var1:"abc",var2:"def"};
<span style="white-space:pre">	</span>    </span>            
<span style="white-space:pre">		</span>var params = {};
<span style="white-space:pre">		</span>params.quality = "high";
<span style="white-space:pre">		</span>params.bgcolor = "#ffffff";
<span style="white-space:pre">		</span>params.allowscriptaccess = "sameDomain";
            params.allowfullscreen = "true";
            var attributes = {};
            attributes.id = "test39";
            attributes.name = "test39";
            attributes.align = "middle";
            swfobject.embedSWF(
                "test39.swf", "flashContent", 
                "100%", "100%", 
                swfVersionStr, xiSwfUrlStr, 
                flashvars, params, attributes);
            <!-- JavaScript enabled so display the flashContent div in case it is not replaced with a swf object. -->
            swfobject.createCSS("#flashContent", "display:block;text-align:left;");
        </script>

方式二(html):

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%" id="test39">
                <param name="movie" value="demo1.swf" />
                <param name="quality" value="high" />
                <param name="bgcolor" value="#ffffff" />
                <param name="allowScriptAccess" value="sameDomain" />
                <param name="allowFullScreen" value="true" />
                <span style="color: #000000;">
<span style="white-space:pre">			</span><param name="flashvars" value="var1=aabb&var2=ccdd" />
<span style="white-space:pre">			</span></span>               
<span style="white-space:pre">			</span> <!--[if !IE]>-->
                <object type="application/x-shockwave-flash" data="demo1.swf" width="100%" height="100%">
                    <param name="quality" value="high" />
                    <param name="bgcolor" value="#ffffff" />
                    <param name="allowScriptAccess" value="sameDomain" />
                    <param name="allowFullScreen" value="true" />
                    <param name="flashvars" value="var1=aabb&var2=ccdd" />
                <!--<![endif]-->
                <!--[if gte IE 6]>-->
                    <p> 
                        Either scripts and active content are not permitted to run or Adobe Flash Player version
                        10.0.0 or greater is not installed.
                    </p>
                <!--<![endif]-->
                    <a href="http://www.adobe.com/go/getflashplayer">
                        <img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash Player" />
                    </a>
                <!--[if !IE]>-->
                </object>
                <!--<![endif]-->
            </object>

在Flash中接收网页传递过来的参数

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
               xmlns:s="library://ns.adobe.com/flex/spark"
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" 
<span style="white-space:pre">			</span>creationComplete="application1_creationCompleteHandler(event)" pageTitle="abc">
    <s:layout>
        <s:BasicLayout/>
    </s:layout>
    <fx:Script>
        <![CDATA[
            import mx.core.FlexGlobals;
            import mx.events.FlexEvent;
 
            protected function application1_creationCompleteHandler(event:FlexEvent):void
            {
                <span style="color: #000000;">var para:Object = FlexGlobals.topLevelApplication.parameters;
</span>             text1.text = para.var1;
                text2.text = para.var2;
            }
 
        ]]>
    </fx:Script>
    <fx:Declarations>
        <!-- 将非可视元素(例如服务、值对象)放在此处 -->
    </fx:Declarations>
    <s:TextInput id="text1" x="190" y="93"/>
    <s:TextInput id="text2" x="190" y="142"/>
    <s:Label x="147" y="94" text="var1:"/>
    <s:Label x="147" y="142" text="var2:"/>
</s:Application>

参数在Flex4的获取方式跟Flex3是不一样的:

Flex3:  var params:Object = Application.application.parameters; 

Flex4:  var params:Object = FlexGlobals.topLevelApplication.parameters;


关于网页给flash传递参数的问题

sdf   function doPassVar(){     window.document.myFlash.OperationType("2");//赋值方式 }           ...
  • hougelou
  • hougelou
  • 2012年03月23日 13:27
  • 1113

Flash如何接收HTML参数

老方法是在Flash文件名后加参数,就跟URL的参数一样,比如foo.swf?param1=123¶m2=456,但是这个方法有一个问题:每次参数变化,浏览器都会重新加载Flash文件,造成了...
  • cuoguo1111
  • cuoguo1111
  • 2007年03月21日 17:12
  • 1297

Flex4 中将网页的参数传递给Flash,并且在Flash中读取这些参数

使用Flash Builder 4创建Flex应用,会自动生成网页调用Flash,会有两种方式显示Flash,下面针对这两个方式看看如何添加参数。 方式一(swfobject): ...
  • u010395804
  • u010395804
  • 2014年06月20日 15:23
  • 448

如何下载网页中嵌入的flash文件

这个似乎以前转发过. 不过时间已经很久了,不如再来一次. http://www.makeuseof.com/tag/how-to-download-embedded-flash-swf-fi...
  • stereohomology
  • stereohomology
  • 2015年05月11日 17:42
  • 2599

flash swf接受外部参数 视频网站播放原理

转载自: http://blog.sina.com.cn/s/blog_5e83fce60100r663.html
  • lovelovelovelovelo
  • lovelovelovelovelo
  • 2017年06月30日 16:08
  • 900

网页中嵌入flash文件的几种方法

1. object + embed       传统的方法 优点:浏览器兼容性好,是 Macromedia 一直以来的官方方法 缺点: a.embed 标签是不符合 W3C 的规范的,无法通过验...
  • saghir
  • saghir
  • 2017年01月24日 11:54
  • 1055

如何在WEB页面中,让在Flash上面.

今天遇到一个问题,页面上一个移动的 div ,在经过一个Flash时,就跑到Flash动画的下面了。这样是不行的。应该是上面移动才行。    查找原因后,找到解决办法,录于下面:1. 将Flash放于...
  • gccr
  • gccr
  • 2007年06月25日 20:08
  • 1398

关于如何在chrome中下载网页flash视频

首先下载fvd  解压开 会看到其中有一个crx拓展名的文件 这是谷歌浏览器的拓展文件  如果直接拖到谷歌浏览器新建的页面中 是无效的 现在已经被谷歌所禁止了 那么该如何操作呢 这...
  • Islandww
  • Islandww
  • 2017年06月10日 23:26
  • 712

网页中插入FLASH的三种方法

一、Object+embed 这应该是Macromedia推荐的写法,因为在Macromedia Dreamweaver 8中,通过可视化界面插入FLASH,将得到如下的代码: ...
  • tf576776047
  • tf576776047
  • 2011年11月12日 15:18
  • 8825

网页中怎么插入flash的代码

做页面前端的过程中经常需要在页面中插入flash,那么你知道如何在网页中插入flash吗?下面本文将把这一段标准的代码贴在下面,以备需要的时候能拿来用,毕竟这种代码超长,靠记忆是很难的。OK,具体如何...
  • u012054869
  • u012054869
  • 2017年06月12日 14:39
  • 555
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Flex4中将网页的参数传递给Flash,并且在Flash中读取这些参数,以及flash接收网页传过来的值
举报原因:
原因补充:

(最多只允许输入30个字)