Flash如何与JS互相传递参数

2024-12-24 17:46:48
推荐回答(2个)
回答1:

使用flash.external.ExternalInterface

步骤一:flash中定义可以访问的函数hello

flash as文件中的关键代码:
import flash.external.ExternalInterface;  
function hello(){  
        return "测试成功了哦~~";  
    } 
//允许js调用flash中的函数 参数1:要调用flash函数的js函数,参数2:被调用flash函数  
ExternalInterface.addCallback("helloas",hello);

步骤二:js中定义可以访问的函数hello和flash文件加载

  
  function hello(v)  
  {  //js中定义的测试函数
      alert(v) ;  
  }  


  //flash组件
   

步骤三:flash访问js中的hello方法

ExternalInterface.call("hello", "jacky");

步骤四:js访问flash的hello方法

document.getElementById("test").helloas();

回答2:

列举了一些方法技巧
'JS给AS设置变量
function setflash(varn, value){
var flash = document.getElementById("index");
flash.SetVariable(varn,value);
}
'JS获取AS变量
function getVar(varn){
var v = GetVariable(varn)
}

'JS控制AS跳转
function goto() {
n++;
document.myFlash.GotoFrame(n);
}

'AS调用JS函数
on (release) {
getURL(\"JavaScript:alert('hello,world')\");
}

'JS间接调用AS函数
原理:JS改变AS的值,AS跟据值的变化调用其函数
var stat=0;
setInterval(test,300){
if (stat==1) doFlash();
}
function doFlash(){
}

JS
flash.SetVariable(star,1);