`
wenrunchang123
  • 浏览: 249328 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

flash中as与js交互

 
阅读更多

      前段时间一直搞活动页面,趁着有空闲的时间总结下as跟js之间的交互。

      首先来段as的代码。

 

package  {
	
	import flash.display.MovieClip;
	import flash.events.Event;
	import flash.external.ExternalInterface;
	
	public class TestAs extends MovieClip {
		
		public function TestAs() {
			bindAllEvent();
			init();
		}
		
		private function init():void{
			btn1.label = "按我吧";
			ExternalInterface.addCallback("callASMethod", callASMethod);
		}
		
		private function bindAllEvent():void{
			btn1.addEventListener("click", btn1Handler);
		}
		
		private function btn1Handler(event:Event):void{
			callJSMethod();
		}
		
		//js调用as
		private function callASMethod(value:String):void{
			btn1.label = value;
		}
		
		//as调用js代码
		private function callJSMethod():void{
			ExternalInterface.call("callJSMethod", "测试下");
		}
	}
	
}

 代码很简单,上面只有一个按钮btn1,定义了两个方法,主要用来给js跟as交互的。

 

  页面代码:

<html>
<head>
<title>as与js交互</title>
</head>
<body>
	<input type="button" value="调用flash方法" onclick="sendToAS()"/>
	<div id="swfcontent"></div>
<script type="text/javascript">
	function insertFlash(elm, eleid, url, w, h, b) {
		if (!document.getElementById(elm)) return;
		var str = '';
		str += '<object width="' + w + '" height="' + h + '" id="' + eleid + '" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0">';
		str += '<param name="movie" value="' + url + '" />';
		str += '<param name="allowScriptAccess" value="always" />';
		str += '<param name="base" value="' + b + '" />';
		str += '<param name="wmode" value="transparent" />';
		str += '<param name="quality" value="autohigh" />';
		str += '<embed width="' + w + '" base="' + b + '" height="' + h + '" name="' + eleid + '" src="' + url + '" quality="autohigh" swLiveConnect="always" wmode="transparent" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>';
		str += '</object>';
		document.getElementById(elm).innerHTML = str
	}
	var base = "";//指针及抽奖图片背景所在路径
	insertFlash("swfcontent", "Lottery", "1.swf", 500, 400, base);

	//as调用js方法
	function callJSMethod(msg){
		alert(msg);
	}

	 function getMovie(movieName) {
		 if (navigator.appName.indexOf("Microsoft") != -1) {
			 return window[movieName];
		 } else {
			 return document[movieName];
		 }
	 }
	 
	//js调用as方法
	function sendToAS() {
		getMovie("Lottery").callASMethod("js调用flash");
	}
</script>
</body>
</html>

  flash跟页面各有一个按钮,html页面的按钮点击后会访问as上的方法,而flash上按钮点击后会调用js上的方法。

分享到:
评论

相关推荐

    AS3与JS交互通信(使用swfObject插入Flash)

    4、使用Flash中的ExternalInterface.addCallback方法创建接口,使JS能够调用AS中的函数。 包含swfobject.js与fla源文件。 (*下载swfObject开发版及示例请访问:http://code.google.com/p/swfobject/) 兼容性,...

    AS3.0与JS交互

    有关FLASH利用AS3.0与网页里javascript产生交互达到信息传递的方法。案例中用了最简单的例子,简单易懂。大家多多交流,共同进步。

    flash与js交互

    flash与js交互方法 当Flash置于HTML容器中时,经常会遇到AS与JS的通信问题,例如:JS能否调用AS中的变量、方法,AS能否调用JS中的变量、方法等等。答案是肯定的。随着技术的不断发展,解决方案也是多种多样的。 欢迎...

    FLASH CS3(AS3)和JS之间通信

    一个简单的示例 通过此例学习页面中的FLASH和JS之间的交互~ HTML文件最好在服务器上发布以后运行,或者设置FLASH的安全面板中添加此HTML所在的位置

    Javascript与flash交互通信基础教程

    下面是一些在Flash和使用Javascript的HTML文件直接通信的示例,每个示例都有简略的步骤 本文讨论了3种基本的Flash/Javascript通信方式: Javascript 到 Flash的通信—-使用Flash播放器的javascript方法 Flash 到 ...

    [原创]基于FLASH机制实现的不同域窗口相互调用js的插件-虫洞

    2)本插件是基于同一台电脑上的FLASH之间能进行LocalConnection以及FLASH与JS能相互调用的原理而设计,将客户端不同域页面间Javascript相互调用转化为了FLASH之间的"本地命令发送". 3)本插件在不同域页面间Javascript...

    flash 中秋博饼程序(附带源文件 ASP + flash交互游戏)

    一个很不错的中秋博饼程序。含ASP+flash进行交互程序。save.asp随时记得博饼的结果。

    只要5分: AS3.0 在线录音并上传,转码MP3,二次压缩上传,带播放功能

    只是使用的话,你只需要,看rec.php(调用flash的,通过js与flash交互,可以知道flash的各种状态,交互函数丰富);uploadSound.php(上传的服务器端程序,用于存储文件的);MP3数据的传输是gzip压缩的,服务器端存...

    flash+php刮奖

    flash+php刮奖实例,js,flash和php之间交互

    AS3语法大全

    AS3语法大全 。AS3即ActionScript3.0的简称。...它在 Flash 内容和应用程序中实现交互性、数据处理以及其他功能。 ActionScript是Flash的脚本语言,与JavaScript相似,ActionScript是一种面向对象编程语言。

    as3比较详尽的工具类

    JavaScript.as ---------------------- javascript交互 HTTPS.as ---------------------- url随机数 SNS.as ---------------------- 各个sns网站的分享 timeline: prevPlay.as ---------------------- 反向/...

    JavaScript中跨域调用Flash的方法

    相信JavaScript与Flash交互大家都会有所接触或者有所耳闻。其实我也是第一次整这个玩意。具体的方法就不说了,很多资料。 开始的时候功能都做得差不多了,实现和没问题。可是就是到了最后,将swf文件放到资源服务上...

    竞赛刚获奖的AS3游戏

    AS3即ActionScript3.0的简称。 ActionScript 动作脚本是...它在 Flash 内容和应用程序中实现交互性、数据处理以及其他功能。 ActionScript是Flash的脚本语言,与JavaScript相似,ActionScript是一种面向对象编程语言。

    JavaScript权威指南第五版【新】(犀牛书)

    与Web浏览器定义的文档对象模型(DOM)一起使用时,JavaScript可以创建动态HTML(DHTML)内容,允许用户与客户端的Web应用程序交互。 JavaScript语法以流行的程序设计语言C、C 和Java为基础,因此,经验丰富的程序设计...

    ActionScript 3.0 开发人员指南 (AS3开发帮助文档)

    第 45 章 : 与其他 Flash Player 和 AIR 实例通信 第 46 章 : 与 AIR 中的本机进程通信 第 47 章 : 使用外部 API 第 48 章 : AIR 中的 XML 签名验证 第 49 章 : 客户端系统环境 第 50 章 : AIR 应用程序的调用...

    gordon-server:用于 NodeJS、HTML5Javascript 和 FlashAS3 的多用户服务器

    结构####Session 会话是 Gordon 层次结构中的最高对象。 每个会话都完全独立于其他会话。 会话包含所有其他 Gordon 对象,如房间、用户和数据对象。 ####Room 一个会话可以分为任意数量的房间。 房间是客户互动的...

    再谈IE中Flash控件的自动激活 ObjectWrap

    淘宝的页面上也常常会使用到Flash,激活限制导致用户的交互性体验感受不够友善。 我们一直想解决此问题。但是国内门户网站的做法都略为麻烦,要么需要为每个flash编写额外的js,要么就是在页面上放置flash的位置打上...

    js和as的稳定传值问题解决

    最近在实现flash的播放音乐的功能,这就涉及到js和as交互的问题,因为要实现动态改变音乐文件的功能,可是如何判定呢?

    C#版ActiveX + JS +Flex通讯 完整实现

    因項目部署需要,特把之前寫的與讀卡器通訊的模塊改為ActiveX插件,給Flash調用,由於Flash不能直接調用ActiveX,所以,用JS作為中間層,作為Flash和ActiveX通訊的橋梁。 開發環境:WINXP _EN 開發工具:VS2005,...

    ActionScript.权威指南中文版

    ActionScript 动作脚本是遵循 ECMAscript第四版 的 ... ActionScript是Flash的脚本语言,与JavaScript相似,ActionScript是一种编程语言,新出的AS3.0使用OOP(面对对象编程),增加更强的报错能力,指定类型也更明确

Global site tag (gtag.js) - Google Analytics