欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

flash调用js中的方法,让js传递变量给flash的办法及思路_javascript技巧

程序员文章站 2022-04-22 12:21:36
...
html 页中的 JavaScript 函数:
复制代码 代码如下:

function GetSwfUrl()
{
var pics1 = parseInt(Math.random()*5)+1;
var pics2 = parseInt(Math.random()*5)+1;
document.my_swfId.SetVariable("pic01Num", pics1);
document.my_swfId.SetVariable("pic02Num", pics2);
}

说明:pic01Num 和 pic02Num 为 Flash 中定义的变量,以上函数将 JS 变量 pics1 和 pics1 分别赋值予 Flash 变量 pic01Num 和 pic02Num 。my_swfId 为 html 页中 swf 的 id .
***************
在 Flash 中与 JS 的通信可以用传统的 getURL,Flash8 以后,可以用 ExternalInterface 。ExternalInterface 在功能上与 fscommand()、CallFrame() 和 CallLabel() 方法相似,但它更灵活、更通用。推荐对 JavaScript 和 ActionScript 之间的通讯使用 ExternalInterface 。
getURL调用JS:
复制代码 代码如下:

getURL("javascript:GetSwfUrl()");

ExternalInterface调用JS:
复制代码 代码如下:

import flash.external.ExternalInterface;//导入 ExternalInterface 类
ExternalInterface.call("GetSwfUrl()");

注意:如果要使用 ExternalInterface,当前帧必需要有 import flash.external.ExternalInterface; 或者 import flash.external.*;