`

flex4与JavaScript交互

    博客分类:
  • Flex
阅读更多

利用flex来开发程序很快,有时难免会和js交互.

flex代码:

<?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" height="24" width="71"
			   creationComplete="{init()}">
	
	<fx:Script>
		<![CDATA[
			
			public function init():void{
				ExternalInterface.addCallback("callFlex",callFlex);
				btnCallJs.addEventListener(MouseEvent.CLICK,btnCallJsHandler);
			}
			
			public function callFlex(data:*):*{
				data.password = "password";
				return data;
			}
			
			public function btnCallJsHandler(evt:MouseEvent):void{
				var data:Object = new Object();
				data.userName = "chenjun";
				var result:String = ExternalInterface.call("callJs",data);
				btnCallJs.label = result;
			}
			
			
		]]>
	</fx:Script>
	
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
	</fx:Declarations>
	<s:Button x="0" y="0" id="btnCallJs" label="calljs" height="24"/>
</s:Application>

 

编译后会自定生成以下文件:



 AsVSJs.html里面有我们想要的代码:

<script type="text/javascript" src="swfobject.js"></script>
        <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";
            var flashvars = {};
            var params = {};
            params.quality = "high";
            params.bgcolor = "#ffffff";
            params.allowscriptaccess = "sameDomain";
            params.allowfullscreen = "true";
            var attributes = {};
            attributes.id = "AsVSJs";
            attributes.name = "AsVSJs";
            attributes.align = "middle";
            swfobject.embedSWF(
                "AsVSJs.swf", "flashContent", 
                "71", "24", 
                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>

 

将以上信息和自己的index.html页面结合:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>as vs js</title>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
    var swfVersionStr = "10.0.0";
    var xiSwfUrlStr = "playerProductInstall.swf";
    var flashvars = {};
    var params = {};
    params.quality = "high";
    params.bgcolor = "#ffffff";
    params.allowscriptaccess = "sameDomain";
    params.allowfullscreen = "true";
    var attributes = {};
    attributes.id = "AsVSJs";
    attributes.name = "AsVSJs";
    attributes.align = "middle";
    swfobject.embedSWF(
        "AsVSJs.swf", "flashContent", 
        "71", "24", 
        swfVersionStr, xiSwfUrlStr, 
        flashvars, params, attributes);

    function callJs(data){
		document.getElementById("userName").innerHTML = data.userName;
		return "ok";
	}

	function btnCallFlexHandler(){
		var flexApp = document.getElementById("AsVSJs");
		var data = new Object();
		data.userName = 'chenjun';
		try{
			data = flexApp.callFlex(data);	
		}catch(e){
			alert(e);
		}
		document.getElementById("password").innerHTML = data.password;
	}
</script>
</head>
<body>
<div>
	flex-->userName:<span id="userName"></span>
	<div id="flashContent"></div>
	<div>	
		flex-->password:<span id="password"></span><br/>
		<input type="button" id="btnCallFlex" value="callFlex" onclick="btnCallFlexHandler()"/>
	</div>
</div>



</body>
</html>

 

 可以测试调用过程了,ie,Firefox通过测试。

  • 大小: 4.5 KB
  • 大小: 5.8 KB
0
0
分享到:
评论

相关推荐

    flex和javascript交互例子

    标题"flex和javascript交互例子"指向了这个主题的核心——如何在Flex应用中调用JavaScript函数,以及反过来在JavaScript中调用Flex的方法。这种技术通常被称为“Bridge”或“跨域通信”。 在Flex中,我们可以使用`...

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

    ### Flex与Ajax交互、Flex与JavaScript交互 #### 一、引言 随着Web技术的发展,Flex作为一种基于Adobe Flash平台的应用开发框架,在企业级应用中曾经非常流行。它提供了丰富的用户界面构建工具,并能够与服务器端...

    flex与js交互2

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

    Flex与JavaScript交互实例

    Flex与JavaScript交互是一种常见的技术,它允许在Adobe Flex(基于ActionScript 3的富互联网应用程序框架)和网页中的JavaScript之间进行通信。这种交互性对于构建混合型应用,特别是在需要利用浏览器内核特性的Web...

    javascript与flex交互

    ### JavaScript与Flex交互知识点 #### 一、简介 在Web开发领域中,JavaScript与Flex的交互是一个非常实用且重要的技术组合。Adobe Flex是一种用于构建和部署丰富的互联网应用程序(RIA)的强大框架,它支持多种...

    flex和javascript交互

    ### Flex与JavaScript交互详解 #### 一、在JavaScript中调用Flex方法 在Flex与JavaScript进行交互时,可以通过`ExternalInterface`实现从JavaScript调用Flex中的方法。这主要是通过向Flex应用注册特定的公共方法来...

    Flex3与javascript相互交互验证

    Flex3与JavaScript之间的交互验证是Web开发中的一个重要概念,它允许Adobe Flex应用程序(基于ActionScript 3)与网页上的JavaScript代码进行通信。这种交互性极大地增强了富互联网应用(RIA)的功能,使得Flex组件...

    Flex与JS交互

    Flex与JavaScript交互是Web开发中的一个重要技术,它允许在Adobe Flash Player或Adobe AIR环境中运行的Flex应用程序与HTML页面中的JavaScript代码进行通信。这种交互性极大地扩展了富互联网应用(RIA)的功能,使得...

    Flex 与javascript交互、C#读写Cookie

    在实现Flex与JavaScript交互时,你需要: 1. 在Flex端,使用`ExternalInterface.addCallback()`方法注册一个可供JavaScript调用的函数。 2. 在JavaScript端,通过Flash对象(通常是`swfObject`)来调用这个注册的...

    flex与JS交互示例

    Flex与JavaScript交互是Web开发中的一个重要技术,它允许在Adobe Flex应用和HTML页面之间进行数据交换和功能调用。在本示例中,我们将深入探讨如何实现这种交互,并通过具体的步骤来理解其工作原理。 首先,Flex是...

    C#与flex交互

    标题中的"C#与Flex交互"指的是在开发过程中,使用C#作为后端处理逻辑,而Flex作为前端用户界面,两者之间进行数据和功能的通信。Flex是一种基于Adobe AIR和Flash Player运行时的开源框架,主要用于构建富互联网应用...

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

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

    Flex与Servlet之间数据的交互

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

    flex与PHP数据交互教程

    - Ajax(Asynchronous JavaScript and XML)非同步JavaScript和XML,允许在不刷新整个页面的情况下与服务器交换数据并更新部分网页内容。在Flex中,我们可以使用URLLoader类来实现类似Ajax的效果,发送异步HTTP请求...

    flex 和 js 交互

    1. **跨域策略文件**:由于Flash Player的安全限制,Flex应用在与JavaScript交互前需要加载一个跨域策略文件,允许它与不同源的JavaScript进行通信。这个文件通常命名为crossdomain.xml,放置在服务器的根目录下。 ...

    FLEX数据传输与交互

    4. SecureSocket:当需要进行加密通信时,SecureSocket组件提供了一个安全的通道,可以实现FLEX与服务器的TCP/IP通信。 四、数据绑定与状态管理 1. 数据绑定:FLEX中的数据绑定是其强大功能之一,它允许UI组件的...

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

    `IFrame.as`可能定义了一个IFrame对象,包含了初始化、加载URL、与JavaScript交互等功能。而`IFrameExternalCalls.as`可能包含了一系列与外部JavaScript进行交互的方法,如添加回调、触发事件等。 在实际应用中,...

    flex 和 javascript 测通

    Flex和JavaScript交互是Web开发中的一个重要领域,尤其在构建富互联网应用程序(RIA)时。这两个技术结合使用,可以实现强大的用户界面和动态功能。本文将深入探讨Flex与JavaScript的交互机制,以及如何实现它们之间...

    flex与js交互浅析.docx

    Flex与JavaScript交互是一种常见的技术,尤其在开发富互联网应用程序(RIA)时,它允许Web页面中的Flash内容与HTML页面的JavaScript代码进行通信。这使得在Flex应用中利用JavaScript的功能,如DOM操作、Ajax请求等,...

    Flex与Applet交互例子

    Flex可以调用浏览器的JavaScript API,而JavaScript又可以与Applet进行交互。Applet通过`LiveConnect`技术暴露Java对象到JavaScript环境中,使得Flex能够通过JavaScript访问这些对象。 - 在Flex中,我们可以使用`...

Global site tag (gtag.js) - Google Analytics