ActionScript提供了一个外部API,那就是ExternalInterface 类,通过ExternalInterface类可以实现ActionScript 和 Flash Player 容器之间的直接通信。
一、在JavaScript中调用ActionScript方法
在 Flash Player 中,可以使用 HTML 页中的JavaScript来调用 ActionScript 函数。 ActionScript 函数可以返回一个值,JavaScript 会立即接收它作为该调用的返回值。
1. 在ActionScript 中调用addCallback()把ActionScript 方法注册为可从容器调用。 成功调用 addCallBack()
后,容器中的 JavaScript 或 ActiveX 代码可以调用在 Flash Player 中注册的函数。
addCallBack
定义如下:
addCallback(functionName:String, closure:Function):void
functionName
参数就是在Html页面中脚本调用的方法名。closure参数是要调用的本地方法,这个参数可以是一个方法也可以是对象实例。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx=http://www.adobe.com/2006/mxml layout="absolute" initialize="this.initApp()">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import flash.external. ExternalInterface;
public function sayHelloWorld(name:String):String {
var msg:String=name+",hello world!";
Alert.show(msg);
return msg;
}
public function initApp():void {
ExternalInterface.addCallback("sayHelloWorld",
sayHelloWorld);
Alert.show("init");
}
]]>
</mx:Script>
</mx:Application>
2. 那么在Html页面中,先获得SWF对象的引用,也就是用<object .../>声明的Swf的对象,比如说是testJs。然后就可以用以下方式调用ActionScript中的方法。
function callActionScript() {
alert(document.getElementById("testJs").sayHelloWorld("奎跃翔"));
}
二、 在ActionScript中调用 JavaScript
在ActionScript中调用JavaScript最简单的方法是使用ExternalInterface(),可以使用此API调用任意JavaScript,传递参数,获得返回值,如果调用失败,ActionScript抛出一个异常。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx=http://www.adobe.com/2006/mxml layout="absolute">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import flash.external. ExternalInterface;
public function callJavaScript():void {
Alert.show(ExternalInterface.call("sayHelloWorld",
"奎跃翔"));
}
]]>
</mx:Script>
<mx:Button x="290" y="10" label="Button"
click="callJavaScript()"/>
</mx:Application>
Html页面中有如下函数定义:
function sayHelloWorld(name) {
var msg=name+”,hello world!”
alert(msg);
return msg;
}
分享到:
相关推荐
当需要在Flash内容与网页之间进行数据交换时,就需要实现ActionScript与JavaScript之间的通信。本程序例子旨在展示这种跨平台通信的实现方法。 ActionScript,基于ECMAScript,是Adobe Flash Player和Adobe AIR中的...
要实现ActionScript与JavaScript之间的相互调用,需要了解两种语言的交互机制。 - **在Flash中调用JavaScript**:通过`getURL()`函数实现。`getURL()`函数主要用于创建超级链接,但也可以用来调用JavaScript函数。...
JavaScript与ActionScript3交互问题总结 在Web开发中,JavaScript是一种广泛使用的客户端脚本语言,而ActionScript3(AS3)则是Adobe Flash平台的核心语言。两者在不同的领域中发挥着重要作用,但有时需要进行交互...
本课程将深入探讨 JavaScript 与 ActionScript 之间的交互机制,这对于创建丰富的互联网应用程序(RIA)和混合型跨平台应用来说至关重要。 1. JavaScript 基础: JavaScript 是一种轻量级、解释型的编程语言,主要...
### ActionScript与JavaScript相互调用 #### 摘要 随着网络技术的发展,网页互动性的增强变得至关重要。本文探讨了如何在ActionScript与JavaScript之间实现相互调用,并借此完成一些单靠任何一种语言都无法实现的...
JavaScript 可以通过这些对象的属性和方法与 Flash 进行交互,如 `getVariable` 和 `setVariable` 方法。 3. **Flash 发布设置**: 为了使 Flash 能够与 JavaScript 通信,需要在 Flash 的发布设置中启用 "Allow ...
总结来说,Actionscript与JavaScript的交互通过`ExternalInterface`在两个不同环境中建立桥梁,使得Flex应用程序可以利用JavaScript与网页环境进行深度集成,实现诸如数据交换、用户界面更新等功能。这种交互对于...
标题"flex和javascript交互例子"指向了这个主题的核心——如何在Flex应用中调用JavaScript函数,以及反过来在JavaScript中调用Flex的方法。这种技术通常被称为“Bridge”或“跨域通信”。 在Flex中,我们可以使用`...
Flex3与JavaScript之间的交互验证是Web开发中的一个重要概念,它允许Adobe Flex应用程序(基于ActionScript 3)与网页上的JavaScript代码进行通信。这种交互性极大地增强了富互联网应用(RIA)的功能,使得Flex组件...
在实现JavaScript与ActionScript的交互时,主要有以下几种方法: 1. **ExternalInterface API**:这是Flash Player提供的一个接口,允许ActionScript调用JavaScript函数和接收JavaScript的回调。在ActionScript中,...
### JavaScript与Flex交互知识点 #### 一、简介 在Web开发领域中,JavaScript与Flex的交互是一个非常实用且重要的技术组合。Adobe Flex是一种用于构建和部署丰富的互联网应用程序(RIA)的强大框架,它支持多种...
Flex与JavaScript交互是Web开发中的一个重要技术,它允许在Adobe Flash Player或Adobe AIR环境中运行的Flex应用程序与HTML页面中的JavaScript代码进行通信。这种交互性极大地扩展了富互联网应用(RIA)的功能,使得...
本文将详细介绍如何实现在 Flash 内容(ActionScript)与网页(JavaScript)之间的交互。 首先,让我们分析提供的代码片段。在第一个例子中,ActionScript 调用 JavaScript 的方法: ```xml <![CDATA[ import...
DOM API提供了遍历和操作HTML元素的方法,是JavaScript和其他脚本语言与HTML页面交互的基础。 这些API在实际开发中起着关键作用。ActionScript API用于创建互动的多媒体内容;JavaScript API用于实现动态的前端交互...
在现代Web开发中,有时我们需要在浏览器端的JavaScript与Flash内容(使用ActionScript编写)之间进行交互,以实现更丰富的用户体验。本教程将深入探讨这两种语言之间的通信机制,特别关注在兼容Firework程序时的实现...
### Flex与JavaScript交互详解 #### 一、引言 随着Web技术的发展,不同语言之间的通信变得尤为重要。在Flex与HTML的结合中,Flex通常作为富客户端应用,而JavaScript则负责处理网页逻辑。为了实现二者之间的无缝...
### Flex与JavaScript交互详解 #### 一、在JavaScript中调用Flex方法 在Flex与JavaScript进行交互时,可以通过`ExternalInterface`实现从JavaScript调用Flex中的方法。这主要是通过向Flex应用注册特定的公共方法来...
Flex与JavaScript交互是一种常见的技术,它允许在Adobe Flex(基于ActionScript 3的富互联网应用程序框架)和网页中的JavaScript之间进行通信。这种交互性对于构建混合型应用,特别是在需要利用浏览器内核特性的Web...