我正在尝试使用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文档不存在,他们的支持论坛几乎一样糟糕。
答案 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监听事件,并且使用起来非常简单