在Flash里面怎么调用Javascript函数--弹出一个js的对话框
首先我们要了解flash是怎样通过fscommand于js进行通讯的.我们应该知道,flash可以通过
getURL()函数执行你想执行的js连接页面(就是弹出自己定义的ie页面).但是用fscomman执
行js可以实现更多的效果,下面就是通过fscommand调用js函数弹出一个对话框的例子.
该例子执行过程是:当fscommand函数执行,IE用一小段VB script程序捕捉FScommand并且提
交到Javascript,那么js函数将会执行.
例子演示下面分四步完成此例子:
1.首先建立一个flash文件,文件名是alert.fla,并在此flash建立FSCommand函数.
在此flash里面的一个按钮写如下的代码:
on(press){
fscommand("flash_alert","wellcomm to www.100000why.net" target="_blank" target="_blank">2.建立一个html文件,并插入刚刚做的flash文件alert,在此最重要一步就是为你的 flash对象命名,因为必须对你的flash命名,因为ie捕捉你的FSCommand函数是依赖你对象名.例子id是testmovie,以下是html里面包含插入alert文件的代码:
<HTML>
<HEAD>
<TITLE>仙龙掌--alert</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF"> <table width="75" border="0" align="center">
<tr>
<td>
<OBJECT
CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
WIDTH="200"
HEIGHT="120"
CODEBASE="http://download.macromedia.com/pub/shockwave/cabs/flashlash.cab";;
ID=testmovie>
<PARAM NAME="MOVIE" VALUE="alert">
</OBJECT></td>
</tr>
</table>
</BODY>
</HTML> 3.为IE加VB script
因为上一步已经对象已经命名为testmovie,那么在VS里面要注明是为的 FSCommand捕捉服务的,并且呼叫js函数.
<script LANGUAGE="VBscript">
Sub testmovie_FSCommand(ByVal command, ByVal args)
call testmovie_DoFSCommand(command, args)
end sub
</script>
上面这段代码实现的功能就是捕捉flash的FSCommand并发给js,执行js函数. 4.加入js函数
此部分就是实现弹出对话框的功能.因对象名是:testmovie.所以在js函数里面有必须的这么,如下就是:testmovie_DoFSCommand做了注明,否则无法执行了.如下就是该例子的代码.
<script LANGUAGE="Javascript">
function testmovie_DoFSCommand(command, args) {
if (command == "flash_alert") {
alert("message from flash: " + args);
}
}
</script>
上面的4步,就实现了flash弹出对话框的功能了.通过这个例子就可以清楚的知道,flash是
如何实现与js进行通讯的.我们可以举一反三通过这样实现更多的更玄的功能.可以通过ie
页面控制flash的播放等.