Flex学习笔记(十四)——网页交互

来源:互联网 发布:mac地址长度为多少位 编辑:程序博客网 时间:2024/05/21 15:41

flash中传入参数

        如果是通过Url调用swf文件,可通过 *.swf?name=aaa  传入。在swf中通过application.parameters获得参数。

        如果swf是以嵌入方式被调用,需要在包装网页(调用swf的网页)中编写代码,如下:

                  actionjsp中对parameters进行解析,并拼接字符串

                  在网页<object>中加入 <param name=”flashVars” value=”字符串参数” />

                 swf application.parameters获得参数

使用navigateToURL

        主要作用是导航的一个页面,无论页面是什么类型,所以可以实现

                  导航到一个页面、

                  下载文档、

                  调用目的页面的js语句:(需要一个html页面,该页面body onload时运行需要的js代码)

ExternalInterface API

      flash.external.ExternalInterface中有两个方法 call()addCallback()和三个属性 available marshallException   objectID

        该类主要作用于 flex程序和其包装页面(调用该swf的页面)

        Call(functionName,String …argus)   该函数用于调用包装页面的js函数,functionNamejs的函数名,argus为函数参数,如:

                  Flex var a:Object=ExternalInterface.call(“sum”,1,3);    Alert.show(a.toString());

                  Js   function sum(a,b)

        addCallback(functionName:String,closure:Function)   该函数用于将flex中函数暴漏给包装页面,其中functionName为别名, closureflex中的函数对象,如

                  Flex ExternalInterface.addCallback(“show”,showFun);

                                    Private Function showFun(message:String)

                  Js  var flash=document.getElementById(‘flashId’);

                              flash.show(“测试msg”);

        可通过available属性判断浏览器是否支持ExternalInterface API如果有异常,可查看marshallException