Flash AS3:调用javascript函数

Posted

技术标签:

【中文标题】Flash AS3:调用javascript函数【英文标题】:Flash AS3: Call javascript function 【发布时间】:2015-08-22 15:38:49 【问题描述】:

我正在尝试使用 AS3 从 swf 执行外部 javascript 函数。

在主场景的第一个关键帧中,我输入了以下代码:

import flash.external.ExternalInterface;
import flash.net.URLRequest;

flash.net.navigateToURL(new URLRequest("javascript:myfunction()"));
ExternalInterface.call("myfunction");
ExternalInterface.call("alert", "123");

这是我知道执行 javascript 函数的所有变体。

html 中,我在标签中有以下语句:

<param name="allowScriptAccess" value="always" />

而我的功能是:

<script type="text/javascript">
function myfunction() 
    alert("This function was successfully triggered via the flash movie.");

</script>

整个解决方案不起作用。有谁知道这个问题是怎么回事?

【问题讨论】:

你从控制台得到的错误是什么?smth with security? 【参考方案1】:

问题是我在本地运行这个 swf。当我将整个解决方案放在http访问的服务器上时,问题不存在。

ExternalInterface.addCallback fails in local environment

【讨论】:

以上是关于Flash AS3:调用javascript函数的主要内容,如果未能解决你的问题,请参考以下文章

将数组从 Flash (AS3) 发送到 JavaScript

Javascript -> Flash 抛出“错误调用 NPObject 方法”

flash AS3.0中如何每间隔一段时间后调用一次之前定义好的函数

你如何从 Flash 触发 javascript 函数?

flash as3.0中的arguments是啥意思

使用AS3从Flash触发Javascript