在iPhone上使用html5视频事件,我该怎么说;“完成”;从一个简单的暂停按钮点击?
我有一个使用HTML5视频标签的iPhone网页。在iPhone上,这些嵌入式视频在本机播放器中播放。我想检查视频何时结束,以及用户何时用“完成”按钮取消了视频。最初,我尝试了以下方法:在iPhone上使用html5视频事件,我该怎么说;“完成”;从一个简单的暂停按钮点击?,iphone,video,html,Iphone,Video,Html,我有一个使用HTML5视频标签的iPhone网页。在iPhone上,这些嵌入式视频在本机播放器中播放。我想检查视频何时结束,以及用户何时用“完成”按钮取消了视频。最初,我尝试了以下方法: var video = $("#someVideo").get(0); video.addEventListener('ended', myFunction); 但只有当视频被允许完成时,它才会被触发。在处理了一些其他事件(暂停、暂停、等待)之后,我发现“完成”按钮触发了一个“暂停”事件。
var video = $("#someVideo").get(0);
video.addEventListener('ended', myFunction);
但只有当视频被允许完成时,它才会被触发。在处理了一些其他事件(暂停、暂停、等待)之后,我发现“完成”按钮触发了一个“暂停”事件。但是,当我添加以下内容时:
video.addEventListener('pause', myFunction);
我的代码是从“完成”按钮和当用户点击播放控件中的暂停按钮时调用的。第二种情况是不可取的;我只想要第一个案例,但这些事件似乎没有给我足够的信息
有人知道用户何时按下iPhone播放器中的“完成”按钮(而不是简单地暂停)的方法吗?有一个称为“结束”的事件,您可能应该使用它,请参见。只需检查暂停功能中的webkitDisplayingFullscreen布尔值。按“完成”或“暂停”会触发暂停事件,但“完成”会额外触发一点,如退出全屏模式。进行该检查将帮助您区分两次按键。 下面是一些示例代码
<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>
var html5Video=函数(){
返回{
init:function(){
var video=document.getElementsByTagName('video')[0];
video.addEventListener('end',endVideo,false);
video.addEventListener('pause',pauseVideo,false);
}
};
}();
函数endVideo(){
警报(“视频结束”);
}
函数pauseVideo(){
var video=document.getElementsByTagName('video')[0];
如果(!video.webkit显示全屏)
endVideo();
}
html5Video.init();
这就是您需要的:
yourplayer.addEventListener('webkitendfullscreen', onPlayerExitFullscreen, false);
反之亦然
yourplayer.addEventListener('webkitbeginfullscreen', onPlayerEnterFullscreen, false);
我找到了你的问题的另一个答案:谢谢,但正如我提到的,我最初尝试了“结束”,但它只有在允许播放到结束时才会触发。单击“完成”不一样。请注意,此属性仅在最近的iOS版本中可用。如果播放视频,然后在播放视频时按“完成”,则此属性有效-但如果暂停视频,然后按“完成”,则不会触发。。。编辑:看到有一个后续问题: