`
michaeltangbin
  • 浏览: 271681 次
  • 性别: Icon_minigender_1
  • 来自: 黑龙江省
社区版块
存档分类
最新评论

JavaScript与ActionScript交互简单实例

阅读更多

    之前一直在研究AS,虽然对JS与AS通信也充满了好奇。正好,今天有同学,在工作的时候要到用相关的技术。我就研究了一下,做了一个简单实例。简单的实现了JS与AS之间的通信。

      首先,看一下JS调用AS。在Flex中通过ExternalInterface调用addCallback()来将AS的一个方法注册为一个JS和VBScript可以调用的方法。

      函数如下:

addCallback(function_name:String, closure:Function):void
其中function_name就是Flex对外部展示,能够被JS调用的函数。

closure是Flex中AS写的函数。

      现在Flex中,已经讲AS代码提供出来了,等待JS去调用。那么在Html页面中,先获得SWF对象的引用,也就是用<object .../>声明的Swf的Id属性,比如说是MyFlexApp。然后就可以用MyFlexApp调用Flex中的方法了。

       JS调用AS完整实例如下

      Flex工程代码

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
	layout="absolute" width="404" height="314"
    creationComplete="initApp()">
	<mx:Script>
		<![CDATA[
		
     		import flash.external.*;                   //引入ExternalInterface
    		public function myAsFuncn(js:String):String
    		{
    			return  "js:"+js+"访问了as:"+asInput.text;
    		}
		    public function initApp():void 
		    {
		        ExternalInterface.addCallback("myJsFunction",myAsFuncn);
		    }

			
		]]>
	</mx:Script>
	<mx:Button x="169.5" y="162" label="点击" fontSize="14"/>
	<mx:TextInput  id="asInput" x="122" y="76"/>
	
</mx:Application>

   Html代码

 

 

<html>
  <head>
	<script language="JavaScript">

		function callAs( )
		{
			var myFlexfun=document.getElementById("myFlexFun");
			var result=myFlexfun.myJsFunction(jsinput.value);
			alert(result);
		}
	</script>
  </head>
	<body>
	   <table>
		<tr>
		   <td> 
 <object id= "myFlexFun" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="400" height="300"> 
<param name="movie" value="test.swf" /> 
<param name="quality" value="high" /> 
<embed src="test.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="300"></embed> 
</object> </td>
		</tr>
		<tr>
		   <td> <input type="input" id="jsinput"/><input type="button" value="点我看效果" onclick="callAs()"/></td>
		</tr>	
          </table>
	</body>
</html>

 

 测试结果

 

到此,JS调用AS完毕!

 

 

  • 大小: 13.7 KB
分享到:
评论
3 楼 leipan19890705 2012-07-04  
AS调用JS里的呢?有没有?我的一直不成功。
2 楼 brightACE 2011-03-21  
不错,学习了
1 楼 zhengyutong 2010-02-08  
不错,收藏了。

相关推荐

    javascript与actionscript3.0通信实例.rar

    在现代Web开发中,有时我们需要在浏览器端的JavaScript与Flash内容(使用ActionScript编写)之间进行交互,以实现更丰富的用户体验。本教程将深入探讨这两种语言之间的通信机制,特别关注在兼容Firework程序时的实现...

    javascript和actionscript之间通信实例

    7. **Adobe AIR Native Extensions (ANE)**: 对于桌面应用程序,Adobe AIR允许创建Native Extensions,将ActionScript与操作系统级别的API连接起来,JavaScript可以通过ANE与ActionScript交互。 8. **PostMessage ...

    一个实现ActionScript 与JavaScript 进行相互通信的程序例子

    ActionScript主要用于创建富媒体内容,而JavaScript则广泛应用于网页动态效果和用户交互。当需要在Flash内容与网页之间进行数据交换时,就需要实现ActionScript与JavaScript之间的通信。本程序例子旨在展示这种跨...

    Actionscript与javascript交互实例程序(修改)

    mxml页面: &lt;?xml version=1.0 encoding=utf-8?&gt; xmlns:s spark xmlns:mx=library://ns.adobe.com/flex/mx width height=100% xmlns:code=http://code.google.com/p/flex-iframe/ creationComplete&gt; ...f

    javascript与flex交互

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

    Flex与JavaScript交互实例

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

    FLASH与ASP交互实例

    通过分析`lv_shiyan.fla`中的ActionScript,我们可以看到如何使用`ExternalInterface`类与JavaScript通信,而JavaScript再与ASP页面进行Ajax交互。`lv_shiyan.html`中会设置`allowScriptAccess`属性,允许Flash与...

    flash actionscript 打鸭子实例

    "打鸭子实例"是一个经典的Flash ActionScript应用,它展示了如何利用ActionScript来实现游戏逻辑和交互性。这篇教程将深入探讨这个实例,帮助你理解ActionScript在创建游戏中的核心作用。 首先,ActionScript是...

    flash与JavaScript的互联实例

    总之,"Flash与JavaScript的互联实例"展示了如何通过ActionScript和JavaScript之间的桥梁实现更高级的交互功能,这在Web开发中尤其有用,尤其是在创建动态内容和游戏时。通过理解这些实例,开发者可以更好地结合这两...

    flex和javascript交互

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

    FLASH与JAVA的交互

    - **Flash External Interface (FEI)**:Flash Player允许ActionScript代码通过ExternalInterface API调用JavaScript函数,进而与网页中的Java代码进行交互。这种方式适用于浏览器环境,Java可以通过JavaScript操作...

    OpenFlashChart与后台交互实例(Java)

    它与后台交互,能够接收服务器端的数据并动态渲染成图表,适用于Web应用程序中的数据分析展示。本实例将探讨如何在Java环境中集成OpenFlashChart,创建交互式图表。 首先,我们需要了解OpenFlashChart的基本结构。...

    ActionScript.权威指南中文版.pdf

    ActionScript是一种基于ECMAScript规范的脚本语言,它的基本语法与JavaScript相似,包括变量声明、数据类型(如Number、String、Boolean)、运算符、流程控制(if语句、for循环、while循环)以及函数定义等。...

    Actionscript中文帮助文档

    6. **ActionScript与XML/SWF/AAM整合**:ActionScript可以处理XML数据,与SWF(Shockwave Flash)文件进行交互,以及使用Action Message Format(AAM)进行组件通信。 7. **错误处理**:理解如何使用try-catch语句...

    ActionScript 2.0入门系列

    10. **ActionScript与HTML/JavaScript的交互**:了解如何通过ExternalInterface类使Flash内容与网页的JavaScript进行通信。 在这个“ActionScript 2.0入门系列”中,"说明.txt"文件可能包含了课程的目录和学习指南...

    ActionScript开发技术大全 电子版

    ActionScript是一种基于ECMAScript(JavaScript的标准化版本)的编程语言,主要应用于Adobe Flash平台,用于创建交互式富媒体内容,如网页游戏、动画、应用程序和视频播放器。本电子版的"ActionScript开发技术大全...

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

    在IT行业中,FLEX与JavaScript的数据交互以及Google插件IFrame的使用是Web开发中的重要技术环节。FLEX是一款基于Adobe Flash Player的富互联网应用程序(RIA)开发框架,而JavaScript则是网页开发的标准脚本语言。当...

    ActionScript 3 0宝典 中文版 8

    在学习ActionScript 3.0的过程中,开发者可以利用它实现复杂的动画、控制时间线、响应用户交互以及与后端服务器进行数据通信等。书中可能涵盖了如下重要知识点: 1. ActionScript 3.0基础:包括ActionScript的版本...

    ActionScript2.0

    ActionScript 2.0 是一种基于ECMAScript(与JavaScript相似)的脚本语言,主要用于Adobe Flash平台。它是Flash Professional和Flash Player中的编程语言,允许开发者创建交互式、动态的Web内容,包括动画、游戏、...

Global site tag (gtag.js) - Google Analytics