我为iPhone提供了一个使用HTML5视频标记的网页。在iPhone上,这种嵌入式视频是在本地播放器中播放的。我想检查视频何时结束,以及用户何时用“完成”按钮解说视频。一开始,我试过这样做:
var video = $("#someVideo").get(0);
video.addEventListener('ended', myFunction);但这只是在视频被允许完成时才会启动。在玩了一些其他事件(暂停、停滞、等待)之后,我发现“完成”按钮触发了一个‘暂停’事件。但是,当我添加以下内容时:
video.addEventListener('pause', myFunction);我的代码既可以从“完成”按钮中调用,也可以在用户点击播放控件中的暂停按钮时调用。第二种情况是不可取的;我只想要第一种情况,但这些事件似乎没有给我足够的信息。
有谁知道有什么方法可以告诉用户什么时候点击了iPhone播放器中的“完成”按钮(而不是简单地暂停)?
发布于 2011-03-10 13:20:43
只需检查暂停函数中的webkitDisplayingFullscreen布尔值即可。按下“已完成”或“暂停”会触发暂停事件,但“完成”会额外增加一点,就像从全屏模式退出一样。这样做可以帮助您区分按2下的按钮。下面是一些示例代码。
<script>
var html5Video = function() {
return {
init: function() {
var video = document.getElementsByTagName('video')[0];
video.addEventListener('ended', endVideo, false);
video.addEventListener('pause', pauseVideo, false);
}
};
}();
function endVideo() {
alert("video ended");
}
function pauseVideo() {
var video = document.getElementsByTagName('video')[0];
if (!video.webkitDisplayingFullscreen)
endVideo();
}
html5Video.init();
</script>发布于 2012-11-16 02:13:52
这就是你需要的:
yourplayer.addEventListener('webkitendfullscreen', onPlayerExitFullscreen, false);反之亦然
yourplayer.addEventListener('webkitbeginfullscreen', onPlayerEnterFullscreen, false);这是我发现的你问题的另一个答案:How to figure out when a HTML5 video player enters the full screen mode on iOS / iPads?
发布于 2010-06-23 14:44:25
您可能应该使用一个名为"ended“的事件,请参阅http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#event-media-ended。
https://stackoverflow.com/questions/3097545
复制相似问题