gpt4 book ai didi

flash - 在 Flash 中使用 ExternalInterface

转载 作者:行者123 更新时间:2023-12-05 00:09:10 24 4
gpt4 key购买 nike

我正在尝试编辑一些 flash 以进行外部 javascript 函数调用,但没有成功。这是我的 actionscript 2.0 代码:

//testing external .js calls

import flash.external.ExternalInterface;

//attempting to make external js call

ExternalInterface.call("createPlaylist","It's my Life!");

这是我的 javascript;
function createPlaylist(mess){
alert("called createPlaylist: " + mess);
}

我看过很多例子,我主要是对 ExternalInterface.addCallback 的使用感到困惑。 .我不需要 javascript 来返回任何东西到 flash,所以这是必要的吗?

无论出于何种原因,我从未看到警报。有人在我的代码中看到任何问题吗?有没有 ExternalInterface我没有图书馆?另外,最好的使用方式是什么 ExternalInterface (即;错误检查等)提前致谢...

最佳答案

ExternalInterface.addCallback 用于 javascript 能够调用您的 Flash 应用程序。例如,如果您想要一个开始/停止视频的 HTML 按钮,您只需为命名方法添加回调,您的 js 就可以调用 [FlashObject].callback 方法名称。

我会说在应用程序中添加 ExternalInterface 方法的最佳方法是为应用程序中的每个交互案例设置一个负责 JS 通信的类。例如:

public class ExternalVideoControl {

private var video:MediaDisplay;

public function ExternalVideoControl(video:MediaDisplay) {
//ExternalInterface.addCallback - one callback for each method you want to expose, pointing to a method within this class;
//add listeners on the video player and point them to methods in this class, for example onProgress
}
public function playVideo():void {
//play the video on the mediaDisplay
}
private function onProgress(event:ProgressEvent):void {
//ExternalInterface.call - report progress back to javascript
}
}

要更直接地测试 ExternalInterface,请尝试调用
ExternalInterface.call("alert", "Hello World!");

关于flash - 在 Flash 中使用 ExternalInterface,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/818089/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com