一、在JavaScript中调用Flex方法
在Flex中可以用ExternalInterface来调用Flex的方法,途径是
1.通过在Flex应用可调用方法列表中添加指定的公用方法。在Flex应用中通过调用addCallback()可以把一个方法添加到此列表中。addCallback将一个ActionScript的方法注册为一个JavaScript和VBScript可以调用的方法。
addCallback()函数的定义如下:
addCallback(function_name:String, closure:Function):void
function_name参数就是在Html页面中脚本调用的方法名。closure参数是要调用的本地方法,这个参数可以是一个方法也可以是对象实例。

举个例子:
<mx:Script>
import flash.external.*;
public function myFunc():Number {
return 42;
}
public function initApp():void {
ExternalInterface.addCallback("myFlexFunction",myFunc);
}
</mx:Script>

2.那么在Html页面中,先获得SWF对象的引用,也就是用<object .../>声明的Swf的Id属性,比如说是MyFlexApp。然后就可以用以下方式调用Flex中的方法。
<SCRIPT language='JavaScript' charset='utf-8'>
function callApp() {
var x = MyFlexApp.myFlexFunction();
alert(x);
}
</SCRIPT>
<button οnclick="callApp()">Call App</button>

王洪岐:传入参数有环境限制,不可用。

二、在Flex中调用 JavaScript
你 可以调用Html页面中的JavaScript,通过与JavaScript的交互,可以改变Style,调用远程方法。还可以将数据传递给Html页 面,处理后再返回给Flex,完成这样的功能主要有两种方法:ExternalInterface()和navigateToUrl()。
在Flex中调用JavaScript最简单的方法是使用ExternalInterface(),可以使用此API调用任意JavaScript,传递参数,获得返回值,如果调用失败,Flex抛出一个异常。
ExternalInterface封装了对浏览器支持的检查,可以用available属性来查看。
ExternalInterface的使用非常简单,语法如下:
flash.external.ExternalInterface.call(function_name: String[, arg1, ...]):Object;
参数function_name是要调用的JavaScript的函数名,后面的参数是JavaScript需要的参数。
举个例子说明如何调用JavaScript函数
Flex应用中,添加如下方法:
<mx:Script>
<?xml version="1.0" encoding="iso-8859-1"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
import flash.external.*;

public function callWrapper():void {
var f:String = "changeDocumentTitle";
var m:String = ExternalInterface.call(f,"New Title");
trace(m);
}
</mx:Script>
<mx:Button label="Change Document Title" click="callWrapper()"/>
</mx:Application>
Html页面中有如下函数定义:
<SCRIPT LANGUAGE="JavaScript">
function changeDocumentTitle(a) {
window.document.title=a;
return "successful";
}
</SCRIPT>

Flex与JavaScript的交互:调用JavaScipt或者被JavaScript调用相关推荐

  1. flex与flash的交互

    所谓flex与flash的交互,说白了就是在felx里加载swf文件,flex和swf中的脚本互相调用,以下一个小实例. flash 方面建两个关键帧,在第二帧上添加一个button,命名为ozbut ...

  2. PHP学习笔记-PHP与JavaScript的交互

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/51814192 本文出自:[顾林海的博客] 前言 前两篇笔记PHP学习笔 ...

  3. UIWebView与JavaScript的交互

    总体概述:        实质上oc与js的通信交互就是发送消息,也即函数调用,只要在交互的过程正确的指定好对方需要调用的函数和参数就ok       oc-->js  stringByEval ...

  4. 高德地图组件在Android的应用以及Android与JavaScript的交互(一)

    最近在慕课网学习了关于高德地图组件的课程(其实就是一个广告,内容和官网的API完全一样),发现这个JavaScript API比Android API简单方便多了,于是就打算放在Android APP ...

  5. asp php flash java,Linux_Flash 和 ASP / PHP 以及 javascript 的交互, 唉,第一次写文章,真是 - phpStudy...

    Flash 和 ASP / PHP 以及 javascript 的交互 唉,第一次写文章,真是很紧张,这是前几天在网上查资料和自己研究的结果,希望能对一些朋友有用.水平所限,肯定有错漏之处,烦劳高手指 ...

  6. 转载——Java与WCF交互(一):Java客户端调用WCF服务

    最近开始了解WCF,写了个最简单的Helloworld,想通过java客户端实现通信.没想到以我的基础,居然花了整整两天(当然是工作以外的时间,呵呵),整个过程大费周折,特写下此文,以供有需要的朋友参 ...

  7. Java与WCF交互(一):Java客户端调用WCF服务

    最近开始了解WCF,写了个最简单的Helloworld,想通过java客户端实现通信.没想到以我的基础,居然花了整整两天(当然是工作以外的时间,呵呵),整个过程大费周折,特写下此文,以供有需要的朋友参 ...

  8. 使用 AjaxManager 生成调用服务器端方法的 javascript 函数

    通过 AjaxManager, 我们可以方便的生成调用 WebService 或者一般处理程序的 javascript 函数, 这样就可以方便的在客户端调用. 本文更新: 2011-12-12: 去掉 ...

  9. 淘宝客教程:如何利用JS调用淘宝商品javascript教程

    [导读]大家都知道,现在最流行的是淘宝客,但一年前搜索引擎已经对淘宝客网站的API很不友好了,因为做的人太多,露得清深层净化API都是直接获取的淘宝数据,内容都是大量重复的.后来淘宝客javascri ...

最新文章

  1. @所有粉丝,祝大家新春快乐!
  2. JAVA简性_Java简介
  3. matlab完全自学一本通 pdf,matlab r2014a自学一本通 MATLAB R2014a完全自学一本通 中文pdf扫描版[125MB] 下载-脚本之家...
  4. POJ - 2318 TOYS(叉积+二分)
  5. CSS的三种定位,月薪30K
  6. 在PHP中实现中文汉字验证码
  7. python访问带密码的共享文件夹_设置带密码和读写权限的共享文件夹 - Hakka
  8. Python中zip函数
  9. 学习笔记:Unity战斗卡牌游戏(三)-----代码加载预设 及 Tween动画使用及播放回掉...
  10. JAVA获取word书签内容_Java 操作Word书签(一):添加、删除、读取书签
  11. Linux虚拟机挂载新的硬盘
  12. Swift_学习笔记_调用ObjectiveC方法
  13. PRD文档详解(20191209)
  14. jenkins构建时报错ERROR: Cannot run program “docker“ (in directory “/var/jenkins_home/workspace/
  15. python输出语句print(3+5)_Python 3 print 函数用法总结
  16. emv中的 部分匹配_EMV指标策略
  17. python中hub_Python中文社区名称的统一
  18. 孟晚舟任华为轮值董事长
  19. 简易电子章制作小模块(VBA)
  20. pyLDAvis3.3.1 报错 OSError: [Errno 22] Invalid argument: ‘https://cdn.jsdelivr.net/gh/bmabey/pyLDAvis@

热门文章

  1. 工作66:动态生成二维码
  2. 前端学习(2223):react之jsx的样式和注释(2)
  3. 前端学习(1509):单页应用SPA特点
  4. 前端学习(659):小结
  5. 远程桌面复制文件,由于网络或其他原因被意外中断,后来再连上远程桌面就无法复制了,而且复制文件的对话框也无法取消,可以试试下面的方法,实测有效:
  6. windows下python安装
  7. java语言中的 继承_Java语言有关继承的总结
  8. saltstack mysql_saltstack学习五:return及入库_MySQL
  9. JDK 1.5新特性
  10. Effective C++: 06继承与面向对象设计