Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/437.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML5视频在';结束';游猎_Javascript_Jquery_Html_Video_Safari - Fatal编程技术网

Javascript HTML5视频在';结束';游猎

Javascript HTML5视频在';结束';游猎,javascript,jquery,html,video,safari,Javascript,Jquery,Html,Video,Safari,我正在使用作为背景英雄视频。0点开始。当它到达0:11剪辑的末尾时,它会弹回到:02并从那里重复。我通过以下方式实现了这一目标: document.getElementById('bgvid').addEventListener('ended',repeatVid,false); function repeatVid(e) { var mediaElement = document.getElementById('bgvid'); mediaElement.currentTime = 2

我正在使用
作为背景英雄视频。0点开始。当它到达0:11剪辑的末尾时,它会弹回到:02并从那里重复。我通过以下方式实现了这一目标:

document.getElementById('bgvid').addEventListener('ended',repeatVid,false);
function repeatVid(e) {
  var mediaElement = document.getElementById('bgvid');
  mediaElement.currentTime = 2;
  mediaElement.play();
}
我只关心桌面体验,因为它可以在平板电脑/手机上切换到备用图像。这适用于Chrome、Firefox甚至IE。然而,Safari从0:00开始重复,而不是:02

将整个功能放在一个按钮上,而不是一个
addeventListener
起作用。重新分配currentTime似乎不是问题。我试着把整个东西放进
video.oncanplaythrough=function(){
。我试着把
.addEventListener('end')
改成
$('video')。在('end',function(){
video.oneded=function(){

似乎.play()总是将您发送回0:00,除非我可以让它在
上('click')
工作,所以出现了一些问题。感谢您的帮助!

Safari中的
play()
函数似乎将当前时间重置为零

如果您
play()
播放视频,然后直接设置currentTime,则其工作方式与预期相同:

document.getElementById('bgvid').addEventListener('ended',repeatVid,false);
function repeatVid(e) {
  var mediaElement = document.getElementById('bgvid');
  mediaElement.play();
  mediaElement.currentTime = 2;
}

该死的。当你绞尽脑汁试图找到答案,结果却不必要地过度复杂化时,这总是令人沮丧。谢谢!有时它只是需要第二双眼睛;-)这里有同样的问题。当我把currentTime放在播放()之后时,我看到视频在00:00闪烁,然后跳到currentTime。有什么想法吗?