`

Flex程序与html通信方法大全

阅读更多

总结的好啊:http://blog.csdn.net/arshoon/archive/2008/06/11/2533982.aspx

 

 

Flex通常作为一个web项目的一部分嵌入到一个web页中,因此Flex程序和web页面的通信就变得非常重要。

1)  Flex提供了多种方法实现Flex程序和封装页面的交互,主要有:flashVars属性,查询字符串参数,navigateToURL()方法,以及flash.external.ExternalInterface类。
2)    Flex程序   获取环境信息:Application.application.url获取封装页面的URL,以及使用@ContextRoot() 以及可以通国 flash.system.Capacities获取到有关系统的一些信息,比如版本、语言、操作系统等;
3)    flashVars用来从外部封装页面向Flex程序传送数据:
         在封装页面传入参数值:AC_FL_RunContent(flashVars, “para1=value1&…&paran=valuen”)或者
<Object>
    <param name=”movie” value=”wrapper.swf? para1=value1 />
    <embed src=”wrapper.swf?para1=value1/>
                  </Object>
                 然后flex 程序里通过 Application.application.parameters.para1获取参数值;
4)    ExternalInterface提供方法使Flex程序和外部的封装页面可以相互调用对方的方法,外部接口类要受到域安全性设置(allowScriptAccess, allowNetworking)的约束。
先判断ExternalInterface是否可用:
ExternalInterface.available;
flex调用js:
ExternalInterface.call(funName, funPara1, …, funParaN);
js调用flex:
首先flex里面用ExternalInterface.addCallback(“jsFunName”,asFun),将AS里面定义的函数赋予一个js里面调用的函数的名字jsFunName;
然后在js里面用mySwf.jsFunName()调用flex里面提供的函数asFun;
ExternalInterface安全性:
一般来说js和flex的访问局限于同一个域之内。
可以设置<Object>和<Embed>的allowScriptAccess=”value”(value取值:never, always, sameDomain默认)来设置flex访问js的权限。
至于js对于flex方法的访问只有flex里面通过addCallback的js才可以访问,对于跨域,可以试用allowDomain()函数设置。
5)    navigateToURL() 可以用来打开一个新的浏览器窗口,也可以用来flex和js之间的通信。比如:
         打开一个新窗口:
var url:URLRequest = new URLRequest(http://blog.csdn.net );
navigateToURL(url, _blank);
这个函数也可以用来执行js,例如:
var url:URLRequest = new URLRequest(“javascript:window.close()”); 或者:
var urlLURLRequest = new URLRequest(“javascript:myFun(para1…paran)”)
myFun()函数是html页面的script部分定义的,函数参数一定要有引号!
navigateToURL(url, _self);
也可以用来发送email:
var urlURLRequest = new URLRequest(mailto:zoushun@hotmail.com );
navigateToURL(url, _blank);
分享到:
评论
11 楼 wuxi15932077655 2009-09-21  
如果 我在flex中使用iframe嵌套了一个html页面,,  这个页面中有一个按钮用来提交blog中的内容,,,当我数据提交上去后,在调用flex中的某个方法!  这样可以实现吗???
10 楼 vii779 2009-09-07  
Flex-Ajax Bridge 也是一种方式,可以用javascript控制Flex组件。
9 楼 huaz98 2009-09-07  
既然是通信,就应该有相互传值,大家说说吧
8 楼 baixiaozhe 2009-08-17  
把swf和html页面都放到tomcat中
7 楼 wangguorui89 2009-08-17  
我是说FLEX与HTML交互时,他们是怎么嵌入的。是把HTML放在TOMCAT服务器下呢,还是放在FLEX工程中。怎么使用呢。
6 楼 baixiaozhe 2009-08-17  
ExternalInterface提供方法使Flex程序和外部的封装页面可以相互调用对方的方法,外部接口类要受到域安全性设置(allowScriptAccess, allowNetworking)的约束。
先判断ExternalInterface是否可用:
ExternalInterface.available;
flex调用js:
ExternalInterface.call(funName, funPara1, …, funParaN);
js调用flex:
首先flex里面用ExternalInterface.addCallback(“jsFunName”,asFun),将AS里面定义的函数赋予一个js里面调用的函数的名字jsFunName;
然后在js里面用mySwf.jsFunName()调用flex里面提供的函数asFun;
ExternalInterface安全性:
一般来说js和flex的访问局限于同一个域之内。
可以设置<Object>和<Embed>的allowScriptAccess=”value”(value取值:never, always, sameDomain默认)来设置flex访问js的权限。
至于js对于flex方法的访问只有flex里面通过addCallback的js才可以访问,对于跨域,可以试用allowDomain()函数设置。
5 楼 baixiaozhe 2009-08-17  
你是说它们相互传值?
4 楼 wangguorui89 2009-08-17  
请问下你有没有一个简单的实例可以供我们参考啊。比如就是FLEX与HTML交互时的一个传递值的实例。我不知道他们之间是怎么嵌入的。也不明白这两个怎么使用。大哥可以帮忙,写个简单的实例吗。或者细细的讲解下。
3 楼 baixiaozhe 2009-08-16  
FLex 和HTML交互时只有互相嵌入才可以 , 一般是在同一个浏览器中
2 楼 wangguorui89 2009-08-15  
FLex 和HTML交互时只有互相嵌入才可以吗。还有没有其它办法啊。这两个一般是在同一个工程中使用吗。能不能说说具体怎么使用啊。
1 楼 十年陈 2009-05-07  
不错,收藏了

相关推荐

    flex 与 js 通信的小例子

    本篇文章将探讨一个关于“flex与js通信”的小例子,它主要涉及到Adobe Flex和JavaScript之间的交互,这对于创建富互联网应用程序(RIA)是非常重要的。Flex是一种用于构建富客户端应用的开源框架,基于ActionScript...

    Flex程序如何获取html容器传递的URL参数值

    2. **调用JavaScript函数**:在Flex程序中,使用`ExternalInterface.call`方法调用HTML页面中的JavaScript函数。例如,`ExternalInterface.call("parseUrlParams")`。 3. **处理返回值**:JavaScript函数返回的结果...

    Flash flex与JS通信

    描述中提到的"flex与Js 通信 相互调用"是指在Flex应用中可以调用JavaScript函数,同时JavaScript也可以调用Flex应用内的方法。这是一个双向的交互过程。例如,你可能需要在Flex应用中获取用户在HTML表单中的输入,...

    SWF之间通信、Flex与SWF之间通信

    ### SWF之间通信、Flex与SWF之间通信 在探讨SWF之间以及Flex与SWF之间的通信时,我们首先需要了解SWF文件的基本概念及其在Adobe Flash平台中的作用。SWF(Shockwave Flash)是一种被广泛应用于网页动画、游戏和其他...

    flex 与JS的通信

    Flex与JavaScript(JS)之间的通信是Web开发中的一个重要技术,特别是在构建富互联网应用程序(RIA)时。本项目提供了一个完整的示例,展示了如何在Flex应用和JavaScript之间建立交互,以及如何通过Flex调用...

    Flex 与 html 交互 调用本地html

    标题“Flex与html交互 调用本地html”指的是在Flex应用程序中调用并与本地的HTML文件进行通信。这通常涉及到Flash Player或Adobe AIR环境,因为它们允许Flex与本地操作系统进行交互,包括访问本地文件系统。 描述...

    JS与Flex通信、互转例子

    在某些场景下,如Java+Flex项目中,需要实现JS与Flex之间的通信,以便于网页与桌面应用或者Web服务进行数据交换。本篇文章将详细讲解JS与Flex之间的通信方式以及互转实例。 首先,我们探讨JS与Flex之间的通信机制。...

    Flex与ActionScript3程序开发

    目录: 第1篇 基础知识篇 第1章 走进Flex世界 第2章 Flex基础知识 第3章 语言基础 第4章 数据基础 第5章 Flex事件驱动 第2篇 视觉设计篇 第6章 Flex皮肤设计 ... 第21章 Flex与Java EE通信

    Flex和.NET通信

    这种通信模式通常利用Web服务技术,如SOAP(Simple Object Access Protocol)或REST(Representational State Transfer),为Flex应用程序提供与.NET服务器之间的数据交互。 在Flex中,我们可以使用AS3...

    myeclipse为web项目添加flex并实现与java通信

    本项目"myeclipse为web项目添加flex并实现与java通信"展示了一个使用MyEclipse集成开发环境(IDE)构建的Web应用程序,其中Flex用于前端用户界面的设计,而Java则作为后端提供数据和服务。以下将详细介绍这一技术...

    Flex 应用,BlazeDS通信

    BlazeDS是Adobe提供的一个免费的服务器端数据服务组件,它允许Flex客户端与Java后端进行实时双向通信,实现数据的高效传输和同步。 在Flex应用中,BlazeDS通信扮演着关键角色,它是连接Flex前端和Java后端服务器的...

    flex嵌入html的容器

    在这个文件中,开发者可能实现了与HTML页面通信的接口,比如通过JavaScript调用Flex组件的方法,或者在Flex中监听HTML页面的事件。 总结,通过以上方式,我们可以将Flex应用灵活地嵌入到HTML页面中,提升Web应用的...

    flex获得html容器传递的url参数值

    在Flex编程中,有时我们需要从外部HTML容器向SWF文件传递参数,这在构建富互联网应用程序(RIA)时尤其常见。...这种方法使得Flex应用能够灵活地接收和使用外部环境传递的数据,增强了Flex与HTML页面的集成能力。

    flex 与java通信所需的lcds包

    Flex与Java通信是Web开发中的常见需求,尤其在构建富互联网应用程序(RIA)时。LCDS,全称为LiveCycle Data Services,是Adobe提供的一种服务,它允许Flex客户端与Java后端进行高效的数据交换。这个压缩包包含的就是...

    Flex-Java通信

    这些架构方法展示了如何通过不同的技术和框架组合,实现Flex与Java之间的有效通信,从而构建出功能强大、用户体验优秀的RIA应用。在实际开发中,开发者可以根据项目需求和团队技术栈选择合适的集成方案。

    flex/java通信包

    Flex和Java之间的通信是开发富互联网应用程序(RIA)时的一项关键技术。这个压缩包"flex/java通信包"包含了一些核心组件,使得Flex客户端可以与Java服务器进行无缝的数据交换。以下是关于Flex与Java通信以及压缩包中...

    Flex程序如何获取html容器传递的URL参数值(转)

    这篇博客文章将讨论如何在Flex程序中获取HTML容器传递的URL参数值,这对于实现灵活的参数传递和配置至关重要。 在HTML中,我们可以为嵌入的SWF对象设置查询字符串参数,这些参数可以通过Flash Player传递给Flex应用...

    集成 Flex 与 Ajax 应用程序

    通过 FABridge,ActionScript(Flex 的编程语言)和 JavaScript 之间可以进行双向通信,使得 Flash 内容能够与 Ajax 应用程序中的数据和功能进行交互。 在开始集成之前,开发者需要准备以下工具和技能: 1. ...

    flex写的rss订阅程序

    Flex RSS订阅程序是一种基于Adobe Flex技术构建的应用程序,主要用于获取并显示RSS(Really Simple Syndication)源中的内容。RSS是一种XML格式,用于发布新闻、博客文章或其他经常更新的内容,使得用户能够在一个...

Global site tag (gtag.js) - Google Analytics