有没有办法检测Flash电影的结束(OOTB,没有使用某种闪回回调)。
或者,有没有办法知道电影的长度?
更新
IsPlaying()看起来很有前途(定期检查它),但事实证明,没有人再创建直接swfs了;现在,内容嵌入在主层中,当内容播放时,主电影停止播放,IsPlaying始终为假...
答案 0 :(得分:3)
var movie = window.document.movie
if(movie.TCurrentFrame("/") == movie.TotalFrames())
alert("Movie Finished");
或者你可以:
if (!movie.IsPlaying())
alert("Movie Stopped");
但那不是你真正想要的。
答案 1 :(得分:1)
import fl.video.VideoEvent.COMPLETE
video.addEventListener(VideoEvent.COMPLETE, alertHTML);
function alertHTML(e:VideoEvent):void{
ExternalInterface.call("alert(\"Video has stopped\");");
}
试一试。您可以使用客户端javascript函数替换alert(\"Video has stopped\");
。
答案 2 :(得分:0)
你可以用ffmpeg -i movie.flv 2>&1
来查看电影长度,但我并没有告诉你:
目前,唯一的方法是将其他一些javascript处理程序附加到Flash事件中。