【发布时间】:2016-07-09 22:25:43
【问题描述】:
我正在寻找一种在 HTML 视频完全加载后播放它的方法。我尝试在视频缓冲完成时获得反馈,但它不起作用。这是我的代码:
var player = document.getElementById('bgvid');
player.addEventListener("progress", function() {
console.log("1");
if (player.buffered.length > 0) {
console.log("2");
var bufferedEnd = player.buffered.end(player.buffered.length - 1);
var duration = player.duration;
console.log(duration);
if (duration > 0) {
console.log((bufferedEnd / duration) * 100);
}
}
});
我在控制台上只得到“1”,因此即使在“auto”上设置了 preload 属性,buffer.length 也不会超过零。唯一不同的是自动播放属性。什么时候打开,我得到控制台中显示的缓冲区百分比,但是如果我暂停视频,它会再次停止缓冲。
提前感谢您的任何想法。
【问题讨论】:
-
哦...我正要问这个问题????看起来你打败了我。无论哪种方式,我都期待答案。
-
让我们希望得到答案:D
-
看看这个答案 - stackoverflow.com/questions/18251632/… - 它假设视频足够小,可以作为 ajax 对象缓冲,但你会确定它什么时候都在那里......
-
这似乎很有希望。我会试试,让你知道。谢谢你的时间
-
@Offbeatmammal 你的建议就像魅力一样!非常感谢您的帮助! :D 我怎样才能给你点赞之类的?
标签: html video progress preload