我有一些非常基本的视频 HTML:
<div class="video_holder">
<video id="video_player" controls="controls" poster="">
<source id="video_mp4" src="" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
</video>
</div>
在我的js中:
function playFile(e) {
...
e.preventDefault()
var selected = $(this);
var path = selected.attr('href');
$("#video_mp4").attr('src', path);
// how do I get this thing to auto-play?????
};
这非常适合将正确的路径注入(inject)到 src
属性中,并且我已经验证了该路径是正确且可访问的。但是,我无法让视频在加载时自动播放。
我已经尝试过:
document.getElementById("video_player").play();
$('#video_player').trigger('play');
$('#video_player').play();
如何触发视频自动播放?
最佳答案
您可以使用:
$("#video_player")[0].play();
或者:
$("#video_player")[0].autoplay = true;
或者:
document.getElementById("video_player").setAttribute('autoplay', true);
无论你适合什么。使用 $('#video_player').play();
您正在引用 jQuery 中不存在的方法 play
并且您应该引用 找到的对象$("#video_player")
.
要在 JS 中更改视频的 src,你只需要类似的东西:
function playFile() {
var video = $("#video_player");
video[0].src = "http://www.yoursrc.com/video_new.mp4";
video[0].load();
video[0].play();
};
<小时/>
注意:在 Chrome 中,如果您想使用
autoplay
属性,还应该添加 muted
属性。引用:https://developers.google.com/web/updates/2017/09/autoplay-policy-changes
关于jQuery 自动播放视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15124438/