现在的位置: 首页 > 综合 > 正文

flash与外界通讯

2013年05月08日 ⁄ 综合 ⁄ 共 1828字 ⁄ 字号 评论关闭

因为经常要调试flash与外界通讯,所以写了个列子,以后可以直接用。

包括三个文件:

quit.fla
quit.html
quit.swf

文件下载:http://download.csdn.net/detail/victoryckl/4041839

在chrome浏览器中打开quit.html的效果如下:

html中主要元素是中间显示的flash,即quit.swf,里面有四个按钮,最下面的按钮是直接在html中实现的,quit.html具体内容如下:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh_cn" lang="zh_cn">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>quit</title>
<script language="javascript">
	function quit_DoFSCommand(command, args)
	{
		alert("quit_DoFSCommand: " + command + " " + args);
	}
	function myclose()
	{
		alert("xxxxxxxxx");
		window.close();
	}
</script>
</head>
<body>
	<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="400" height="250" id="quit" align="middle">
	<param name="allowScriptAccess" value="sameDomain" />
	<param name="allowFullScreen" value="false" />
	<param name="movie" value="quit.swf" />
	<param name="quality" value="high" />
	<param name="bgcolor" value="#66cccc" />
	<embed src="quit.swf" quality="high" bgcolor="#66cccc" width="400" height="250" name="quit" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
	</object>
	
	<form>
	<input type="button" value="close" onclick="myclose();"/>
	</form>
</body>
</html>

quit.fla是swf的源文件,里面可以查看到每个按钮点击事件处理脚本,使用的是as2.0,具体代码如下:

on(click)
{
	this.label="getURL(\"javascript:alert(\'you clicked me\')\");";
	getURL("javascript:alert('you clicked me')");
}

on(click)
{
	this.label="fscommand(\"quit\");";
	fscommand("quit");
}

on(click)
{
	this.label="getURL(\"javascript:window.close()\");";
	getURL("javascript:window.close()");
}

on(click)
{
	this.label="lv.load(\"close.txt\");";
    var lv:LoadVars = new LoadVars();
    lv.load("close.txt");
	lv.onLoad = function(success){
		if(success){
			this.label += "success";
		} else {
			this.label += "failed";
		}
	}
}

抱歉!评论已关闭.