我想延迟 YouTube 视频的自动播放。我的视频目前会在页面加载后立即自动播放。这是我正在使用的 iframe 代码:
iframe allow="加速度计;自动播放;剪贴板写入;加密媒体;陀螺仪;画中画" allowfullscreen="" frameborder="0" height="315" src="#videolink#?autoplay= 1&controls=0" title="YouTube 视频播放器" width="560">
但是,由于页面加载时的视频加载,开始时间似乎总是略有延迟。为了控制视频的开始时间点,我试图找出一种将自动播放开始延迟 5 秒的方法。我阅读了有关在 javascript 中使用超时函数的帖子,但不完全确定要放入其中的行。
任何帮助将不胜感激。
答案 0 :(得分:1)
您现在不需要放置 iframe
,以下代码将在 5 秒后自动播放视频。 Stack Overflow 没有播放视频,您可以保存并手动尝试。
<div id="ytplayer"></div>
<script>
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('ytplayer', {
height: '360',
width: '640',
videoId: '668nUCeBHyY' //Place the video id here
});
}
setTimeout(function() {
player.playVideo();
}, 5000);
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
</script>