AS3中的Javascript和Flash

时间:2012-02-13 23:12:59

标签: javascript flash

是否可以在Flash中使用Javascript。例如,作为一个简单的测试,我试图在单击按钮时使用Javascript的警报方法。

我正在使用AS3。有可能吗?

2 个答案:

答案 0 :(得分:2)

与Marty提到的一样,您可以使用 ExternalInterface 类来执行Javascript。您可以选择执行嵌入在(html)页面代码中的函数,并从头开始创建一个函数。由于alert是默认函数,因此您可以将其名称用作call方法(ExternalInterface)的第一个参数,将字符串作为第二个参数。

如果你提供一个参数,你可能想编写一个函数来执行(或返回)某些东西。

btn.addEventListener(MouseEvent.CLICK, btnClicked);
function btnClicked(e:MouseEvent):void {
    ExternalInterface.call("alert","something");
    // or
    ExternalInterface.call("function(){alert('something');}");
}

答案 1 :(得分:1)

否.. Flash使用ActionScript 3。

但是,您可以使用ActionScript的ExternalInterface类在与嵌入式SWF相同的页面上调用JavaScript函数。

实施ExternalInterface的快速演示:

if(ExternalInterface.available)
    ExternalInterface.call("alert", "Hello!");

提示:除非您在ExternalInterface中添加项目的位置并选中“始终允许”,否则this security settings panel调用将无法在本地运行。