如何禁用 html5 视频自动播放?
我试过的:
<video width="640" height="480" controls="controls" type="video/mp4" autoplay="false" preload="none"><source src="http://mydomain.com/mytestfile.mp4">Your browser does not support the video tag.</video>
我会删除该autoplay
属性,因为如果浏览器遇到它,它会自动播放!
autoplay
是一个HTML 布尔属性true
,但请注意这些值false
是不允许的。要表示一个false
值,您必须省略该属性。
布尔属性不允许使用值“true”和“false”。要表示假值,必须完全省略该属性。
此外,类型进入源内部,如下所示:
<video width="640" height="480" controls preload="none">
<source src="http://example.com/mytestfile.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
参考:
删除视频标签中的自动播放。使用这样的代码
<video class="embed-responsive-item" controls>
<source src="http://example.com/video.mp4">
Your browser does not support the video tag.
</video>
它是 100% 工作的
尝试添加autostart="false"
到您的源标签。
<video width="640" height="480" controls="controls" type="video/mp4" preload="none">
<source src="http://example.com/mytestfile.mp4" autostart="false">
Your browser does not support the video tag.
</video>
要禁用自动播放,您必须autoplay
完全删除属性。
否则将被解释为autoplay=true
。很不明显!
确实设置autoplay
为false
无济于事,某些视频无论如何都会播放。在小提琴中看到这个案例。
如果你想暂停所有视频,你可能想通过代码来做一些事情:
videos = document.querySelectorAll("video");
for(video of videos) {
video.pause();
}
当然,如果video
标签位于影子根元素中,上述情况将不起作用,但几乎没有任何通用解决方案适用于影子根元素。在那里,您将需要一种自定义方法并首先扩展影子根。
只需preload="none"
在您的视频标签中使用,视频将在页面加载时停止自动播放。
删除所有属性,autoplay
因为它在标签中的存在是true的布尔简写。
另外,请确保您始终使用video
oraudio
元素。不要使用object
或embed
默认使用第三部分插件自动播放这些元素,并且如果不更改浏览器中的设置就无法停止。
<video class="embed-responsive-item" controls>
<source src="http://example.com/video.mp4" autostart="false">
Your browser does not support the video tag.
</video>
你可以设置autoplay=""
<video width="640" height="480" controls="controls" type="video/mp4" autoplay="">
<source src="http://example.com/mytestfile.mp4">
Your browser does not support the video tag.
</video>
附言。为了使您可以使用autoplay
或autoplay="autoplay"
只需将 autoplay="false" 放在源标签上.. :)