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

JavaScript 和 Flash 的通信(经典!)

2013年02月19日 ⁄ 综合 ⁄ 共 1548字 ⁄ 字号 评论关闭

Flash到Javascript的通信
从HTML可以发送数据到Flash,反过来也可以. 这个例子演示了如何应用Flash的Fscommand来发送数据到Javascript.

查看示例:示例2
下载源文件: flash_to_javascript.zip(10K)

简要步骤:
Flash中
新建一个文件,保存为flash_to_javascript.fla
创建一个文本域,设置成输入文本(Input Text),选择"border"以便我们能看到他,指定他的变量为inputVar
创建一个按钮,在按钮上添加如下的as:

on (release) {
  fscommand ("send_var", inputVar);
}

保存文件,导出HTML和SWF

Dreamweaver中
1.打开导出HTML文件,修改<OBJECT>和<EMBED>标签,结果同上:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/
flash/swflash.cab#version=5,0,0,0"
width=366 height=142 id="myFlash">

<embed src="javascript_to_flash.swf" quality=high
width=366 height=142
type="application/x-shockwave-flash"

pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash" name="myFlash" swLiveConnect="true">
</embed>

 2. 插入如下的Javascript到<Body>标签内:
<SCRIPT LANGUAGE=JavaScript>
<!--
var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
function myFlash_DoFSCommand(command, args)                {
  var myFlashObj = InternetExplorer ? myFlash : document.myFlash;
  alert (args);
}

if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 &&
  navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
  document.write('<SCRIPT LANGUAGE=VBScript/> /n');
  document.write('on error resume next /n');
  document.write('Sub myFlash_FSCommand(ByVal command, ByVal args)/n');
  document.write(' call myFlash_DoFSCommand(command, args)/n');
  document.write('end sub/n');
  document.write('</SCRIPT/> /n');
}
//-->
</SCRIPT>

转自:http://www.blueidea.com/tech/multimedia/2004/1712_2.asp

抱歉!评论已关闭.