2010-03-08 52 views
0

我正在一个网页上工作,我必须包含一个嵌入式视频。视频托管在其他一些域上。我能够嵌入视频并在网页加载后自动播放。然而,我有一个要求,我必须删除显示视频的div,一旦播放,并代替视频,我必须现在显示一些文本。 问题是我能够通过嵌入标记中的自动启动变量进行自动播放......但是,我如何知道视频已结束。托管公司只提供嵌入标记,并且他们没有任何播放器API可供使用。 我觉得一种方法(或更确切地说是解决方法)是在后台启动一个eventlistener,并查看视频的总时间以及何时达到该时间内的内容。但问题在于如果用户暂停视频,那么div也会被删除。停止/删除嵌入式播放器

我是flash.Are的新手,我们可以将一些标准变量或操作作为flashvars传递给swf文件,以停止正在运行的播放器或了解播放器的状态(请注意,我们仅从中获取嵌入标记视频托管网站,所以我们不拥有该代码,他们没有太多的文件来帮助我解决这个问题)。

感谢您的帮助。

回答

1

如果你知道内容是一部电影,因此可能有一个线性帧进展,你可以使用Flash javascript API。对于伪代码一种可能性:

everyHalfSecond { 
    currentFrame = movie.TCurrentFrame("/"); 
    totalFrames = movie.TotalFrames(); 
    if (currentFrame + 1 == totalFrames) { 
     doMovieComplete() // switch out your div 
    } 
} 

WRT您undefined对象变量,这听起来像标准的浏览器的Javascript的问题。为了解决这个问题,可以使用你自己的浏览器特定的“getSWF”函数(例如this blog entry中的getFlexApp),或者你可以使用类似swfobject的东西。

+0

感谢您的答复。我试过这个,但是对于嵌入对象,当我做window.document。我得到一个'undefined'值。 – Rajat 2010-03-08 21:07:45