flash与js通讯方法

时间:2021-05-28

今天主要学习一下js与flash是如何通讯滴。

1、先学习一下
getURL(url,window,variables)

使用getURL语句,可以让指定的浏览器窗口,转向显示指定的URL地址。参数(url)指定要显示WEB页面文档的URL地址。参数(window)指定要要显示WEB页面文档的浏览器窗口,它可以是指定为自定义的窗口名称,也可以

如果想让它执行调用js函数执行,那么可以这样
on(release){
getURL(\"JavaScript:alert('hello,world')\");

}
如果调用自定义的函数
on(release){
getURL(\"JavaScript:aiqi('test')\");

}
那么html页面里要定义这个函数,比如
functionaiqi(s){
alert(s);
}

这样就可以实现简单的flash与js通讯

那么如何让js来控制flash呢。
SetVariable()函数
document.getElemenyById(\"js\").SetVariable(\"myvar\",\"asdfasdfasdf\");

js为html中swf文件的id

如何用javascript来调用flash中函数叱。
直接的方法应该是米有。
可以模拟一下。在flash中设一个变量,javascript控制改变这个变量的值,flash一检测到此变
量值改变,变执行函数;
flash
--------------
varstat=0;
setInterval(test,300){
if(stat==1)doFlash();
}
functiondoFlash(){

}

javascript
--------------------
tt.SetVariable(\"stat\",1);

这个例子,我想已经实现了js与flash的交互了。
讲解一下。其实很简单。
首先在html文件里定义一个函数
functionaiqi(s){
//给flash赋值
js.SetVariable("stat",s);
}
注js为swf文件的id
SWF文件里有两按纽它们的AS分别为
on(release){
getURL("javascript:aiqi(1)");
}
on(release){
getURL("javascript:aiqi(0)");
}
通过这两个按纽,传递参数给js的aiqi()函数,
aiqi()函数动态改变flash中stat中值。
swf中AS为
varstat=0;
varc=0;
setInterval(function(){
if(stat==1)
doFlash();
},1000)
functiondoFlash(){
var1=c++;
}
当flash检测到stat值变化时调用doFlash().
//[ActioninFrame1]
functiondoFlash()
{
var1=c++;
}//Endofthefunction
varstat=0;
varc=0;
setInterval(function()
{
if(stat==1)
{
doFlash();
}//endif
},1000);
on(release)
{
getURL("javascript:aiqi(1)");
}

on(release)
{
getURL("javascript:aiqi(0)");
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章