在Javascript中收听我的Flash事件

时间:2010-11-15 19:16:32

标签: javascript jquery actionscript playlist

我正在尝试使用OVP播放器构建一个带播放列表的基本视频播放器。到目前为止,我已经找到了如何使用ExternalInterface输入新的视频源,但我无法弄清楚如何收听Flash事件“EVENT_END_OF_ITEM”。

如何在Javascript(以及jQuery)中监听Flash事件?

OVP定义了很多事件,但我不知道如何倾听它们。例如,这是EVENT_END_OF_ITEM:

public function endOfItem():void {
     sendEvent(EVENT_END_OF_ITEM);
}

OVP文档不存在,他们的支持论坛几乎一样糟糕。

3 个答案:

答案 0 :(得分:4)

在Model.as文件中,找到将此行添加到所有其他导入(在文件的开头):

import flash.external.*;

然后在结束事件中,添加以下行:

ExternalInterface.call("stopedPlaying");

所以事件看起来像这样:

        public function endOfItem():void {
            sendEvent(EVENT_END_OF_ITEM);
            // inform JavaScript that the FLV has stopped playing
            ExternalInterface.call("stoppedPlaying");
        }

然后在HTML文档中,在SCRIPT标记之间添加:

function stoppedPlaying()
{
    // do something when the FLV starts playing
};

答案 1 :(得分:1)

我认为jQuery的externalInterface插件会让它变得相对简单。如果没有,那么DOMEx类看起来很有希望。来自DOMEx站点的代码示例:

if (ExternalInterface.available) ExternalInterface.call(javaScript, "Howdy Ya'll");
[...]

答案 2 :(得分:0)

你可以使用SWF对象项目google
http://code.google.com/p/swfobject/

这个库让你能够从actionscript到javascript监听事件,并且使用起来非常简单