如何优雅地停止html5视频播放

时间:2014-11-05 23:27:40

标签: javascript html5 google-chrome video-streaming html5-video

有没有办法干净地停止html5视频播放?

有以下选项:

设置videoElement.src ="" 。这会在视频元素上引发错误,代码为=。

OR

调用videoElement.load()。这设置了readyState = 0,但没有太多关于它的文档。

1 个答案:

答案 0 :(得分:1)

UX Perspective

在Google上查看暂停和停止之间的差异给了我各种结果,我可以将其总结为:

  

暂停:停止播放。从最后一个位置继续再次击球   停止:停止播放。从头开始再次打比赛

至少从用户体验的角度来看,涵盖所有理由

停止加载媒体

如果您的真正目标是停止缓冲过程,那么您当前的方法似乎完全正确,运行以下代码并不会在我尝试的任何浏览器中触发任何错误。

var video = document.querySelector("video");
video.play();
setTimeout(function() {
  video.pause(0);
  video.setAttribute("src", "");
}, 5000);
<video id="video" controls="" preload="none" mediagroup="myVideoGroup" poster="http://media.w3.org/2010/05/sintel/poster.png" style="height:180px">
  <source id="mp4" src="http://media.w3.org/2010/05/sintel/trailer.mp4" type="video/mp4">
  <source id="webm" src="http://media.w3.org/2010/05/sintel/trailer.webm" type="video/webm">
  <source id="ogv" src="http://media.w3.org/2010/05/sintel/trailer.ogv" type="video/ogg">
</video>