`
wkcause
  • 浏览: 13792 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

FLEX与JS数据交互,以及Google插件IFrame的使用

 
阅读更多

       最近因为项目需要,用到的flex,同时需要与js做数据交互,同时还用到了Google的插件IFrame,总结一点点自己的使用心得,其中很多资料都是在网上Google到的。

 

 

  • FLEX调用JS:

 

ExternalInterface.call("callJSMethod")

其中callJSMethod为js的函数名。具体的可以看FLEX的API,有详细的说明。需要注意的是,该JS方法需要在引用该SWF文件的JSP文件中。即:有a.jsp,包含一个b.swf的object,在b.swf中只能调用a.jsp中的方法。如果想要操作其他jsp如何处理?下面会讲到。

 

  • JS调用FLEX:

先需要在FLEX中注册接口方法:

 

ExternalInterface.addCallback("flexMethod",flexMethod);

前一个参数为JS中调用的函数名称,后一个为在flex中函数。具体的可以查看API文档,有详细的说明。

然后在JSP文件中需要引用该swf文件:

 

<object id="flexEdit" name="flexEdit" type="application/x-shockwave-flash" width="100%" height="100%" align="middle" >
	<param name="movie" value="../swf/flexEdit.swf" />
	<param name="quality" value="high" />
	<param name="wmode" value="transparent" />
	<param name="bgcolor" value="#ffffff" />
	<param name="allowscriptaccess" value="*">
	<param name="allowScriptAccess" value="sameDomain" />
	<param name="allowFullScreen" value="true" />
</object>

 

然后在JS中调用:

 

function callFlexMethod(){
	var flexObj = document.getElementById("flexEdit");
        var par = "";
        flexObj.flexMethod(par);}

 

 重点是需要获取swf文件的object,来进行操作。如果是非当前页面需要操作swf呢?那么就需要获取这个含有swf的jsp,然后再进行操作。现在很多都用到了iframe,应该是能够实现的。

 

  • FLEX弹窗

在FLEX中需要用到弹窗,使用也比较简单,代码如下:

public static function addWin():void{
	//创建弹出窗体
	var openner:IFlexDisplayObject = PopUpManager.createPopUp(this,OpenWindow, true);
	//窗体居中
	PopUpManager.centerPopUp(openner);
}

 其中OpenWindow为需要弹出flex页面,具体的可以看FLEX的API,说的很详细。现在要说的是,使用Google的IFrame插件在flex中嵌套jsp或html等页面。使用也很简单。

插件地址 http://code.google.com/p/flex-iframe

使用方法,在flex的页面中加入:

 

<flexiframe:IFrame id="testb" label="baidu"source="http://www.baidu.com" width="80%" height="80%" x="5" y="5"/>

具体参数设置可以自己去看慢慢研究。

现在需要说的两个问题是

1.弹出或者引用的JSP页面与FLEX交互的问题。

2.弹出或者引用的JSP页面会遮盖FLEX的问题。

  • 先说第一个,给力的网友给出了解决办法。传送门:http://www.iteye.com/topic/1130632
  • 再说第二个,IFrame也可以实现。重点就是,得到IFrame的ID,然后调用该IFrame的页面的JS方法即可。已上面的代码为例,取到openner,然后做转换,至于为什么如此操作,小弟也不知,API也没说,往哪位大神解决了,给点指点。
var ow=OpenWindow(openner);
ow.iframeID.callIFrameFunction("callJSPMethod");

 

iframeID为flex的OpenWindow页面中iframe的ID。具体的参数,可以查看API。

附上IFrame的源文件,其中已加入解决遮盖问题的代码。

 

 

分享到:
评论
1 楼 1qqqqqq 2014-12-22  
求教  在flexviewer 的widget中用iframe 嵌套的jsp ,求教jsp的js 如何调用哦as??谢谢

相关推荐

    flex与PHP数据交互教程

    综上所述,Flex与PHP数据交互涉及的技术点包括客户端与服务器的通信方式选择、数据传输协议的选择以及如何在客户端和服务器端编写相应的代码来实现这些功能。理解并掌握这些知识点对于构建高效的富互联网应用程序至...

    flex与JS交互示例

    5. **实际应用**:Flex与JavaScript的交互广泛应用于网页中的数据交换、用户交互、页面导航等场景。例如,Flex可以用于复杂的计算或图形渲染,而JavaScript则负责处理DOM操作和页面逻辑。 在提供的示例"flexWithJS...

    Flex与JS交互

    - **Ajax集成**:Flex应用可以利用JavaScript与服务器进行异步通信,比如使用XMLHttpRequest对象进行Ajax请求,获取或发送数据。 - **安全考虑**:由于涉及跨域通信,需要注意安全问题,如防止XSS攻击和CSRF攻击,...

    flex与js交互2

    ### Flex与JavaScript交互详解 #### 一、引言 随着Web技术的发展,不同语言之间的通信变得尤为重要。在Flex与HTML的结合中,Flex通常作为富客户端应用,而JavaScript则负责处理网页逻辑。为了实现二者之间的无缝...

    flex和javascript交互例子

    在Flex中,我们可以使用`ExternalInterface`类来与JavaScript进行交互。`ExternalInterface.addCallback`方法允许我们在JavaScript中调用Flex组件的方法,而`ExternalInterface.call`方法则用于在Flex中调用...

    flex与js交互 关于ExternalInterface使用的小例子

    标题“flex与js交互 关于ExternalInterface使用的小例子”指出了本文将探讨如何使用Flex的ExternalInterface类与JavaScript进行通信。ExternalInterface是Flex提供的一个API,允许ActionScript(Flex的主要编程语言...

    Flex项目Google IFrame使用

    5. **ActionScript与IFrame通信**:在Flex中,可以通过ActionScript与IFrame内的JavaScript进行通信,但这需要正确配置事件监听器和数据传递机制。错误的设置可能导致IFrame内容不显示或功能失效。 为了更好地理解...

    Flex与Java数据交互

    Flex与Java数据交互是Web开发中的一个重要话题,它涉及到客户端与服务器端的数据交换技术。Flex是一种基于Adobe AIR和Flash Player运行时的富互联网应用程序(RIA)开发框架,主要用于创建动态、交互性强的用户界面...

    Flex与Servlet之间数据的交互

    Flex与Servlet之间的数据交互是JavaWeb开发中的一个重要环节,它涉及到客户端富互联网应用程序(RIA)与服务器端数据处理的协同工作。Flex作为一个基于Adobe Flash Player的前端开发框架,主要用于创建具有丰富用户...

    flex数据交互_方式

    在探讨“flex数据交互方式”这一主题时,我们首先需要理解Flex是什么以及它在数据交互中的角色。Flex是一种用于构建和部署丰富的互联网应用程序(RIA)的开源框架,由Adobe Systems开发并维护。它使用MXML(标记语言...

    flex iframe js

    在IT行业中,`flex iframe js`是一个特定的技术领域,它涉及到使用JavaScript与Adobe Flex应用程序进行交互,特别是通过IFrame(内联框架)实现。本文将深入探讨这一技术,包括其工作原理、应用场景以及如何实现AS...

    Flex与Java的交互

    Flex与Java的交互是跨平台应用开发中的常见技术组合,允许前端用户界面(UI)与后端业务逻辑进行高效沟通。在本文中,我们将深入探讨如何使用Flex 4与Java进行通信,并通过三种不同的方法实现这一目标:RemoteObject...

    flex与flash的交互

    本文将深入探讨Flex与Flash之间的交互,以及如何利用它们来构建动态、交互性强的Web应用程序。 Flex是由Adobe开发的一种开源框架,主要用于构建基于Flash Player或Adobe AIR的桌面和Web应用程序。它提供了MXML和...

    flex与ajax交互、flex与javascript交互.docx

    本文将详细介绍如何使用Flex与Ajax进行交互以及如何实现Flex与JavaScript之间的通信。 #### 二、Flex-AjaxBridge技术概述 Flex-AjaxBridge技术是一种用于在Flex应用和基于JavaScript的Ajax应用之间进行通信的技术...

    FLEX数据传输与交互

    本文将深入探讨FLEX数据传输与交互的相关知识点。 一、FLEX架构基础 FLEX架构主要由ActionScript、MXML和Flex SDK组成。ActionScript是FLEX的主要编程语言,类似于JavaScript,用于编写业务逻辑和控制应用行为。...

    flex 和 js 交互

    1. **数据交换**:Flex可以利用JavaScript与服务器进行异步通信,比如使用Ajax技术更新数据,或者获取网页上的实时信息。 2. **用户界面交互**:当用户在Flex组件上进行操作时,可以触发JavaScript事件,更新HTML...

    flex IFrame控件的配置使用详细过程

    通过上述步骤,您已经掌握了如何在Flex项目中配置和使用IFrame组件来嵌入JS页面,并实现Flex与JS页面之间的交互。这不仅可以提高开发效率,还能帮助开发者构建更加丰富和动态的应用界面。希望本文能对您的项目开发...

    flex 文档以及后台数据交互详解

    在本文中,我们将深入探讨Flex的相关文档以及它如何与后台数据进行交互。 首先,让我们了解Flex的基础知识。Flex的核心组件包括Flex SDK(软件开发工具包),它提供了构建Flex应用程序所需的所有工具和库。SDK包含...

    flex flex和 java交互

    1. **环境配置**:确保你已经安装了Flex Builder(或使用IDE如IntelliJ IDEA或Eclipse的插件)、Java SDK以及Apache Tomcat等服务器环境。 2. **创建Flex项目**:在Flex Builder中创建一个新的Flex应用程序,选择...

Global site tag (gtag.js) - Google Analytics