flash与html怎么交互,其实就是通过javasceipt交互的。
在flash8之间普遍是使用fscommand和getUrl(“Javasciprt:…….”)这两个方法的 引用:
flash中加入
on (press)

{
getURL(“javascript:do1()”);
}
页面中加入
不怎么好用,不再赘述了。

在flash8之后,flash提供了专门的接口可以和js互访,这个就是ExternalInterface
ExternalInterface里面有个call()方法,可以很方便的让flash来调用javascript的函数

ExternalInterface.call(functionName:String,Parameters);
这个方法有两个参数:
functionName – 你想要调用的javascript函数名要以字符串的形式
Parameters – 需要传递给javascript函数的参数,用逗号分开,是可选的。

AddCallback方法允许javascript调用flash时间上函数,基本的语法结构如下ExternalInterface.addCallback(functionID:String,instance:Object,functionName:Function);

与call方法类似,它也是一个静态方法,它有三个参数
functionID – 从 JavaScript 调用 ActionScript 函数时可使用的名称。此名称不必与 ActionScript 方法的实际名称匹配。
instance – this 在该方法中被解析成的对象。此对象不一定是在其上可找到该方法的对象,您可以指定任何对象(或 null)。
functionName – 要从 JavaScript 调用的 ActionScript 方法。

看看我做的一个小例子吧
asjs.bmp (173.08 KB)
2007-12-7 08:56 PM
avascript里的代码 复制内容到剪贴板
代码:
这是flash中的代码 复制内容到剪贴板
代码:
import flash.external.*;//加载包

function asFunc(str:String):Void //供js调用的函数
{
fromJs.text = +str;
}
ExternalInterface.addCallback(“asFunc”, this, asFunc);//注册addCallback

ok.addEventListener(“click”, doClick);//发送按钮的事件

function doClick(eventObj:Object):Void //点击了发送按钮后
{
ExternalInterface.call(“jsFunc”, toJs.text);//访问js里的jsFunc()函数,参数是 toJs.text
};
toyouxio.onPress=function()
{
getURL(“http://www.youxio.com”,”_blank”);
}

Comments are closed.

Post Navigation