Flex与javascript通信

首先列出代码部分,我们可以先尝试的感受一下效果:

1.Flex代码部分:文件名为Flex_Javascript.mxml

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s
="library://ns.adobe.com/flex/spark"
xmlns:mx
="library://ns.adobe.com/flex/mx"
minWidth
="400" minHeight="300" backgroundColor="#0119FD" creationComplete="init()">
<s:layout>
<s:VerticalLayout horizontalAlign="center"/>
</s:layout>

<fx:Script>
<![CDATA[
import mx.controls.Alert;
public function init():void
{
ExternalInterface.addCallback("FlexMethod",FlexMethod);
}
private function FlexMethod():void
{
Alert.show("这是Flex的Alert方法");
}
protected function FlexMethod_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
FlexMethod();
}

protected function FlexCallJS_clickHandler(event:MouseEvent):void
{
// TODO Auto-generated method stub
ExternalInterface.call("JSMethod","这是Javascript的Alert方法");
}

]]>
</fx:Script>

<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Button width="200" height="30" label="Flex调用Javascript" click="FlexCallJS_clickHandler(event)"
color
="#FE0101" fontFamily="楷体" fontSize="16" fontWeight="bold"/>
<s:Button width="200" height="30" label="Flex的Alert方法" click="FlexMethod_clickHandler(event)"
color
="#FE0101" fontFamily="楷体" fontSize="16" fontWeight="bold"/>
</s:Application>

2.Javascript代码部分:将以下代码添加到index.template.html里面(为什么要添加到index.template.html里面呢?因为index.template.html里面的代码会自动添加到Flex自动生成的HTML文件中)。

<script type="text/javascript">
function JSMethod(info) {
alert(info);
}
function JSCallFlex() {
document.getElementById("Flex_Javascript").FlexMethod();
}
</script>

<input type="button" value="Javascript调用Flex" onclick="JSCallFlex()"/>
<input type="button" value="Javascript的Alert方法" onclick="JSMethod('这是Javascript的Alert方法')"/>

3.修改Flash的大小,否则看不到HTML里面添加的按钮Button,我这里改为400X300

swfobject.embedSWF("${swf}.swf", "flashContent", "400", "300",
swfVersionStr, xiSwfUrlStr, flashvars, params, attributes);

 

这里稍微解释一下,不多说,你懂的:

1.Flex里面使用ExternalInterface.call("Js函数名称",参数)进行调用javascript方法,其返回的值就是Js函数所返回的值。

2.在init方法中使用ExternalInterface.addCallback("注册的方法名",As中的函数名)进行注册,“注册的方法名”可以再javascript中直接调用

3.在js中,就可以用document.getElementById("Flash在Html中的ID").注册的方法名(参数)进行调用,当然,默认"Flash在Html中的ID"就是Flex文件的名称,例如,我们这里就是Flex_Javascript,因为我们的Flex文件就是Flex_Javascript.mxml




 

转载于:https://www.cnblogs.com/Hero-Qiang/archive/2011/09/22/2185640.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/464616.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

wat java_并发工具优于wati、notify(69)

现在几乎没有理由在使用wait 和 notify&#xff0c;使用高级工具代替java.util.concurrent 包并发工具分三类&#xff1a;Executor 框架并发集合(concurrent Collection)同步器(synchronizer)并发集合对标准集合接口(List、Map、Queue)封装了高性能的并发实现为了提高并发性&am…

一道关于 fork 的笔试题

题目阅读下面的代码&#xff0c;显示终端会打印出几个 hello world&#xff1f;#include <sys/types.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h>int main() {fork();fork();fork();printf("hello world\n");exit(0); }…

最新招聘公司网站 以及学校的宣讲会

http://campusys.chinahr.com/E/unilever/ 联合利华http://www.mckinsey.com/ 麦肯锡http://www.asap.net.cn/ 信杰 http://guangzhouhonda.51job.com/grad.php 广州本田汽车http://www.hanagroup.com/http://www.augmentum.com/http://www.tetrapak.com.cn/welcome2.htm …

小球游戏1

引用&#xff1a;http://www.oschina.net/code/snippet_12_4121 [图片] pic3.jpg [图片] pic4.jpg [代码] [Java]代码 01public class Player extends AnimatedSprite {02...03Override04 protected void onManagedUpdate(final float pSecondsElapsed) {05 super.…

[Swift实际操作]八、实用进阶-(7)使用通知的方法进行对象间的消息传递

本文将为你演示&#xff0c;如何使用Notification Center进行消息的传递。通知中心是一个调度消息通知的类&#xff0c;采用单例设计模式&#xff0c;实现数据传递&#xff0c;回调等功能。首先打开自定义视图的代码文件(CustomView.swift) 1 import UIKit2 //使当前的自定义类…

java怎么调kettle_通过Java调取Kettle的结果集

Kettle端&#xff1a;Data Grid只是测试数据&#xff0c;目的是把数据传递到记录结果。Java端&#xff1a;package com.womai.util;import org.pentaho.di.core.KettleEnvironment;import org.pentaho.di.core.RowMetaAndData;import org.pentaho.di.trans.Trans;import org.pe…

Tomcat4/5连接池的设置及简单应用示例

标题&#xff1a;Tomcat4/5连接池的设置及简单应用示例关键字&#xff1a;Tomcat 连接池 JDBC驱动 Context 作者&#xff1a;jrq内容&#xff1a;一、Win2k下Tomcat4的连接池的配置1.安装JDK1.4和jakarta-tomcat-4.1.27.exe。 路径分别为 D:/jdk1.4 和 D:/Tomcat 4.1。 安装…

java并发编程实战阅读总结(a)

1、锁(lock)与volatile(1)、隐式锁&#xff0c;java提供了强制原子性的内置锁机制&#xff1a;synchronized块或synchronized方法。操作共享状态的复合操作必须是原子的&#xff0c;以避免竞态条件&#xff0c;比如读-改-写操作和检查再运行操作。复合操作会在完整的运行期占有…

我也确实很向往深圳这种拼搏的精神

今天跟个同学聊天&#xff0c;是关于他的offer选择&#xff0c;他拿了一个不错的外企岗位offer&#xff0c;这个offer的薪资是他现在薪资两倍还多一些&#xff0c;他现在人在外地&#xff0c;年后准备来深圳工作&#xff0c;他在微信说让我给些建议。首先我肯定的是&#xff0c…

VBA语法基础

数据类型 “数据类型”是指如何将数据存储在内存中。 (1)Boolean 表示逻辑数据&#xff0c;可以是True或False中的任一个值。占用2字节的存储空间&#xff0c;取值范围为True或False&#xff0c;缺省值为False。 (2)Byte 只能表示正数。占用1字节的存储空间&#xff0c;取值范围…

clamav Java_ClamAV安装使用及API例子

ClamAV是一款由Sourcefire组织开发的开源杀毒引擎&#xff0c;Sourcefire同时也是Snort入侵检测引擎的所有者。ClamAV提供了一种更为快速灵活的框架用以检测恶意代码和软件产品。可以作为现有的台式机、文件服务器、邮件服务器以及其他需要杀毒扫描软件场景中杀毒扫描软件的补充…

PHP json_encode后的数据有的大括号于中括号

当array是一个从0开始的连续数组时&#xff0c;json_encode出来的结果是一个由[]括起来的字符串。 而当array是不从0开始或者不连续的数组时&#xff0c;json_encode出来的结果是一个由{}括起来的key-value模式的字符串。转载于:https://www.cnblogs.com/xxllzizi/p/9836469.ht…

第一次使用 Blog

不喜欢BBS上不负责任的灌水&#xff0c;希望有一个记载自己日常心态和工作中所用到的有用技术的平台&#xff0c;作为自己以后的一个回顾&#xff0c;也与大家一同分享。很久就想拥有自己的Blog了&#xff0c;但这第一次使用 Blog &#xff0c;还是有点兴奋&#xff0c;Blog这个…

中科院开源 RISC-V 处理器“香山”流片,已成功运行 Linux

去年 6 月份&#xff0c;中科院大学教授、中科院计算所研究员包云岗&#xff0c;发布了开源高性能 RISC-V 处理器核心 —— 香山。近日&#xff0c;包云岗在社交平台晒出图片&#xff0c;香山芯片已流片&#xff0c;回片后进行了串口调通&#xff0c;1 月 24 日成功运行了 Linu…

java并发编程实战阅读总结(b)

5、Executor框架 Executor框架是并发集合java.util.concurrent中的一个成员。 Executor为灵活且强大的异步任务执行框架提供了基础&#xff0c;还提供了对生命周期的支持&#xff0c;以及统计信息、应用管理机制和性能监视等机制。Executor 最早是为了解决生产者-消费者模式而…

公司那些事-关于领导

首先,请允许我将范围限定一下,本文中的领导,并不是指那些了不起的大人物,而是说IT企业中的,我们身边的组长,经理,部长等等,之所以这么限定,原因非常简单,本人只接触过这个层面的领导. 领导也是普通人在我们中间,经常有意无意的对领导提出一些比较高的要求,比如领导应该是技术专…

java io流操作_十个Demo进行讲解Java中IO流的常用操作~

好久不见的IO流对IO流的学习&#xff0c;我记得还是初学Java基础的时候&#xff0c;后来找工作过程中经常看到有些招聘信息中写到熟悉IO流&#xff0c;现在想想IO流&#xff0c;真的是一脸懵逼&#xff0c;不说这么多废话了&#xff0c;IO流这次好好整理一下。说说IO流的类别在…

这些应用仍未兼容安卓新版本,系统升级后将无法使用

8月7日&#xff0c;谷歌正式发布Android 9 Pie&#xff0c;至今已两月有余。近日&#xff0c;华为终端开放实验室对国内主流应用在Android 9 Pie的兼容性进行测试&#xff0c;结果显示&#xff1a;目前TOP3000应用兼容率已经超过95%&#xff0c;但仍有少量应用存在启动失败、闪…

非常郁闷,WinForm中正常显示的自定义控件无法在WebForm中正常显示!

我写了一个自定义控件(Win Control)&#xff0c;此控件在WinForm中运行正常&#xff0c;但在WebForm中无法显示(在WebForm中此控件并不显示为红叉&#xff0c;但是一个对象图标)。由于没有出现权限或安全方面的提示&#xff0c;因此我从头开始一行一行进行比对&#xff0c;最终…

在家过年这两天|多图

这两天收到了很多朋友的新年祝福&#xff0c;在这里回应下&#xff0c;希望看到这篇文章的朋友们新的一年快乐开心&#xff0c;在求学的人学有所成&#xff0c;在工作的朋友们功成名就&#xff0c;家人健康&#xff0c;吃喝不愁……祝你们㏠㏡㏢㏣㏤㏥㏦㏧㏨㏩㏪㏫㏬㏭㏮㏯㏰㏱…