9

如何在 flash 中使用 actionscript 触发 javascript 函数?

目标是从 Flash 电影中触发 jQuery 功能

4

2 回答 2

13

看看ExternalInterface -Class。
来自 AS3 语言参考:

ExternalInterface 类是 External API,它是一个应用程序编程接口,可以在 ActionScript 和 Flash Player 容器(例如,带有 JavaScript 的 HTML 页面)之间进行直接通信。Adobe 建议对所有 JavaScript-ActionScript 通信使用 ExternalInterface。

它是这样工作的:

ExternalInterface.addCallback("sendToActionScript", receivedFromJavaScript);
ExternalInterface.call("sendToJavaScript", input.text);

您可以提交参数并接收回调......很酷,对吧?;)

据我所知,它也适用于 AS2 ......

于 2008-10-06T12:11:05.433 回答
4

正如 Jochen 所说,ExternalInterface 是要走的路,我可以确认它适用于 AS2。

如果您打算触发导航或影响闪光灯所在区域的任何内容,请不要直接从您从闪光灯调用的函数中执行此操作。Flash 期望它调用的函数有一个返回值,如果函数完成时 Flash 对象不存在,则 Flash 插件将崩溃。

如果您需要导航或更改内容,您可以添加一个 setTimeout 调用(到您的 js 函数中)。这将创建一个新线程并为 flash 提供它期望的返回值。

于 2008-10-06T12:28:00.063 回答