Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.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 在显示视频之前,是什么导致延迟?_Javascript_Html_Html5 Video - Fatal编程技术网

Javascript 在显示视频之前,是什么导致延迟?

Javascript 在显示视频之前,是什么导致延迟?,javascript,html,html5-video,Javascript,Html,Html5 Video,我有两个视频。我正在隐藏第二个视频。 我想在第一个视频完成后播放一个新视频,无需任何下载。 理论上,加载后它应该保留在缓存中,但浏览器会再次访问该目录。但是,在播放第二个视频之前,会在一瞬间出现一个黑屏 let myvid=document.getElementById('my-player'); 让myvid2=document.getElementById('my-player2'); myvid.addEventListener('ended',函数(e){ activeVideo=act

我有两个视频。我正在隐藏第二个视频。
我想在第一个视频完成后播放一个新视频,无需任何下载。
理论上,加载后它应该保留在缓存中,但浏览器会再次访问该目录。但是,在播放第二个视频之前,会在一瞬间出现一个黑屏

let myvid=document.getElementById('my-player');
让myvid2=document.getElementById('my-player2');
myvid.addEventListener('ended',函数(e){
activeVideo=activeVideo++;
myvid.src=myvid2.src;
const playPromise=myvid.play();
如果(playPromise!==null){
playPromise.catch(()=>{
myvid.play();
})
}
});
.second{
显示:无;
}

若要查看此视频,请启用JavaScript,并考虑升级到 网络浏览器

若要查看此视频,请启用JavaScript,并考虑升级到 网络浏览器



如何消除这种黑屏?如果这是不可能的,那么我如何在JS中组合这两个视频?

在第一个视频结束前半秒以隐藏的方式开始。由于在myVid上设置了src,因此在第一个视频完成时切换可见性。这导致它重新加载。“如果你只是隐藏我的视频,展示我的视频2,然后播放我的视频2怎么办?”托尼·艾布拉姆斯,我试过这么做。一切都进展顺利,但在移动设备上,这种方法不行work@Below雷达,我不太明白如何做到这一点,你能演示一下吗?移动设备试图节省带宽,并且会推迟他们能做的任何事情,所以在第一次结束前半秒以隐藏的方式启动它。由于在myVid上设置了src,因此在第一个视频完成时切换可见性。这导致它重新加载。“如果你只是隐藏我的视频,展示我的视频2,然后播放我的视频2怎么办?”托尼·艾布拉姆斯,我试过这么做。一切都进展顺利,但在移动设备上,这种方法不行work@Below雷达,我不太明白如何做到这一点,你能演示一下吗?移动设备试图节省带宽,并将推迟他们可以做的任何事情