flash as 外部 3.0 API 要求和优点

外部 API 是 ActionScript 中的一部分,它为在 ActionScript 与充当 Flash Player 容器的“外部应用程序”(通常是 Web 浏览器或独立放映文件应用程序)中所运行的代码之间进行通信提供了一种机制。在 ActionScript 3.0 中,外部 API 的功能是由 ExternalInterface 类提供的。在 Flash Player 8 之前的 Flash Player 版本中,使用 fscommand() 动作与容器应用程序进行通信。ExternalInterface 类替代了 fscommand(),是 JavaScript 与 ActionScript 之间的所有通信的推荐使用机制。

注: 如需使用旧的 fscommand() 函数(例如,为了与较早的应用程序保持兼容或与第三方 SWF 容器应用程序或独立的 Flash Player 进行交互),仍可将其作为 flash.system 包中的包级函数来使用。

ExternalInterface 类是一个子系统,通过它可以轻松地实现从 ActionScript 和 Flash Player 到 HTML 页中的 JavaScript 或任何包含 Flash Player 实例的台式机应用程序的通信。

ExternalInterface 类只在以下情况下可用:

  • 在所有受支持的 Internet Explorer for Windows 版本(5.0 和更高版本)中
  • 在容器应用程序(例如使用 Flash Player ActiveX 控件实例的台式机应用程序)中
  • 在支持 NPRuntime 接口的任何浏览器中(当前包括 Firefox 1.0 和更高版本、Mozilla 1.7.5 和更高版本、Netscape 8.0 和更高版本以及 Safari 1.3 和更高版本)。

在其它所有情况下(例如,在独立的播放器中运行),ExternalInterface.available 属性均返回 false。

从 ActionScript 中,可以在 HTML 页上调用 JavaScript 函数。与 fscommand() 相比,外部 API 可提供以下改进功能:

  • 可以使用任何 JavaScript 函数,而不仅仅是可与 fscommand() 函数一起使用的函数。
  • 可以传递任意数量的、具有任意名称的参数;而不是仅限于传递一个命令和一个字符串参数。这为外部 API 提供了比 fscommand() 大得多的灵活性。
  • 可以传递各种数据类型(例如 Boolean、Number 和 String);不再仅限于 String 参数。
  • 可以接收调用值,该值将立即返回到 ActionScript(作为进行的调用的返回值)。

重要说明: 如果为 HTML 页中的 Flash Player 实例指定的名称(object 标签的 id 属性)包含有连字符 (-) 或在 JavaScript 中定义为运算符的其它字符(如 +、*、/、、.,等等),那么在 Internet Explorer 中查看容器网页的时候将无法从 ActionScript 调用 ExternalInterface。此外,如果定义 Flash Player 实例的 HTML 标签(object 和 embed 标签)嵌套在 HTML form标签中,也将无法从 ActionScript 调用 ExternalInterface。

时间: 2024-12-22 11:01:59

flash as 外部 3.0 API 要求和优点的相关文章

FLASH读外部数据(文本|XML|ASP)

xml|数据 前言: 因为工作缘故,好久没有写什么象样的东西了!最近发现论坛有个通病,就是某问题问个千遍万遍也不倦(总有些朋友思想懒惰,到这里直接提问,连搜索都不用,这里向这些朋友提出批评,原因你比我更清楚).根据本人多方面观察,所以想最后一次,彻底的详细的对某些问题实际应用问题来个"围剿活动".本节就讲"FLASH与外界联系"的教程!本教程只供初级学习的朋友参考,高手可进行批点(最好帮助修改我的错误或者指出更为简单的方法,或者把文件归整为AS2.0类),如急切需要

《Adobe Flash CS4 ActionScript 3.0中文版经典教程》——ActionScript 3.0简介

ActionScript 3.0简介 在开始学习本书课程之前,最好花点时间了解一下ActionScript的历史以及Adobe ActionScript 3.0如何适用于Adobe Flash和Flash平台. Flash和ActionScript的简要历史 自从Flash在1996年发布以来,Flash和ActionScript是同步发展的.当前,将Flash CS4所提供的设计和动画工具与ActionScript 3.0的高级交互功能相结合,它提供了功能更为强大.使用更为广泛的开发环境:但是

《Adobe Flash CS4 ActionScript 3.0中文版经典教程》——1.5复习

1.5复习 Adobe Flash CS4 ActionScript 3.0中文版经典教程 复习题 1.可以使用什么ActionScript代码来导航到时间轴的特定帧? 2.可以使用哪个关键字来创建一个新的ActionScript变量? 3.在ActionScript中,条件语句的作用是什么? 复习题答案 1.要导航到时间轴的特定帧,可以使用gotoAndPlay()或gotoAndStop()语句.圆括号中的值是指要导航到的特定帧.例如: gotoAndPlay(1); gotoAndPlay

java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI(xxx

在使用webservice,mule esb等需要jaxb的项目里经常会出现 JAXB 2.0 API is being loaded from the bootstrap classloader这个错误,按照打出的信息Use the endorsed directory mechanism to place jaxb-api.jar in the bootstrap classloader. (See http://java.sun.com/j2se/1.5.0/docs/guide/stan

ext5.0 api文档查找疑问this.getView().down() , down()找不到

问题描述 ext5.0 api文档查找疑问this.getView().down() , down()找不到 Ext.define('app.view.module.ModuleController', { extend : 'Ext.app.ViewController', alias : 'controller.module', deleteRecords : function(button) { var grid = this.getView().down('modulegrid'); /

Flash处理外部XML文档数据

xml|数据 准备: 首先你得有台电脑.其次是要装上Windows系统和Flash8. XML基础: 既然是处理XML文档.就要先来了解下XML文档.下面是我所了解的,有些是在Flash中用不到的.XML扩展标记语言(Extensible Markup Language)是SGML(Structured Generalized Markup Language)的子集.XML是由World Wide Web Consortium(W3C)的XML工作组定义的. 下面开始了解XML的结构: XML是

flash 调用外部数组

有几个教程在这个网站,包括如何加载数据从外部位置.但是,还没有关于这个指南网站,讨论如何格式和处理您的资料的任何使用大于展示他们作为一个字符串的文本. 不同的XML数据可以格式化广泛使用Flash闪存自身的内置的访问,这些数据我将集中讨论将低于产量的结构,你会遇到最变量时,装载从文本文件或简单的PHP脚本. 以下网址就是一个例子的数据,你将进口到闪光: http://www.kirupa.com/developer/mx2004/pg/files.php除了刚刚进口的数据,我要采取的一系列文件名

《Adobe Flash CS5 ActionScript 3.0中文版经典教程》——1.3 使用代码片断添加ActionScript

1.3 使用代码片断添加ActionScript Flash影片主时间轴上的任意一个关键帧以及影片剪辑元件里的任意一个关键帧,都可以添加ActionScript代码.在编译后的Flash项目的播放过程中,当播放到某一帧时,如果其中包含代码,它们就会被执行. Flash里所有时间轴上的代码都在"动作"面板里编写,从Flash里的"窗口"菜单中可以打开它,或者按F9键(Windows)或Option+F9组合键(Mac). 在后面的课程里还会介绍如何在外部ActionS

《Adobe Flash CS5 ActionScript 3.0中文版经典教程》—— 导读

前言 Adobe Flash CS5 专业版提供了一个功能完善的工作环境,为操作二维和三维动画.声音.矢量和位图图形.文字以及视频提供了多种工具.ActionScript 3.0 是一款集成在 Flash CS5中的高级编程语言,可用来开发丰富的交互式项目.结合所学到的 ActionScript 技术,用户可以使用 Flash 软件所提供的设计和动画工具为Web.桌面和移动设备创建丰富的交互式程序.游戏.电子学习内容和电子商务工具. 关于本书课程 本书是 Adobe Flash 平台的官方培训系