博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Javascript和swf通讯基础教程
阅读量:5922 次
发布时间:2019-06-19

本文共 1284 字,大约阅读时间需要 4 分钟。

需要这个包

import 
flash
.external.ExternalInterface;


这是一个静态类,主要用两个方法:

  1. ExternalInterface.addCallback(给Javascript的接口,AS函数位置,AS函数名)
  2. ExternalInterface.call(Javascript函数名,传值)
复制代码
AS给做一个接口,然后Flash就可以访问AS的接口,从而可以调用AS的函数


ExternalInterface.addCallback("browse",this,upBrowse);

其中borwse是
javascript
可以调用flash 的接口,upBrowse是AS的函数


ExternalInterface.call("upAllComplete",upCount);

这个是AS调用Javascript的接口

其中upAllComplete是Javascript的函数,upCount是需要传递的参数


废话少说,例子上。


这个是AS调JS



AS代码:

  1. ExternalInterface.call("upAllComplete",upCount);
复制代码
JS代码:

  1. function upAllComplete(upData){

  2.     //upData是AS中的upCount传过来的值,可以是对象,数组,字符串 ,数字
  3.     alert(upData);
  4. }
复制代码
这个是JS调用AS的(有点麻烦)


JS代码:

  1. var movieName = "testcommand";
  2. //testcommand是HTML中Object的id和name,name和id要一样,这个是考虑到浏览器兼容性
  3. function thisMovie() {

  4.     if (navigator.appName.indexOf ("Microsoft") !=-1) {

  5.          return window[movieName];
  6.     } else {

  7.          return document[movieName];
  8.     }
  9. }

  10. thisMovie().browse(toSwfData);
  11. //browse是swf函数upBrowse的映射名称
复制代码
AS代码:

  1. function upBrowse(jsData){

  2.    trace(jsData);
  3. }
  4. ExternalInterface.addCallback("browse",this,upBrowse);
  5. //映射upBrowse这个函数为接口browse
复制代码
估计如果有人在使用的时候Javascript可能会出现报错之类的问题,到时候跟帖吧。


这个AS版本可以支持到Flash 
player
7(貌似),不过flash本身在浏览器就提供一些接口,诸如:gotoAndPlay(),play(),stop()等等,这个用到的时候可以上网查一下。

转载于:https://www.cnblogs.com/programmer-wind/archive/2012/02/22/2919556.html

你可能感兴趣的文章
php编程规范整理
查看>>
function 与 => 的区别
查看>>
http各种状态码具体解释
查看>>
XtraBackup应用说明(支持TokuDB)
查看>>
jira 跟工时有关的配置文件
查看>>
P1121 环状最大两段子段和
查看>>
SpringMVC详解(五)------参数绑定
查看>>
CSS3 渐变(Gradients)
查看>>
jQueryEasyUI Messager基本使用
查看>>
S2-052复现过程(附POC利用)
查看>>
ReactNative踩坑日志——fetch如何向服务器传递参数
查看>>
mdb文件怎么打开
查看>>
虚拟机配置静态 IP 以后无法连接的解决办法
查看>>
讲讲“池”的概念
查看>>
[LeetCode] Non-decreasing Array 非递减数列
查看>>
背水一战 Windows 10 (34) - 控件(进度类): RangeBase, Slider, ProgressBar, ProgressRing
查看>>
解决Linux安装 VMware tools 工具的方法
查看>>
ASP.NET Core:使用Dapper和SwaggerUI来丰富你的系统框架
查看>>
python获取自己的环境变量
查看>>
Do You Kown Asp.Net Core - 根据实体类自动创建Razor Page CURD页面模板
查看>>