我使用嵌入的YouTube视频作为this website主页/着陆页的背景。我希望有人访问该网页时自动播放,但有一个小故障。该视频不会在首次访问网页时自动播放,但是如果刷新页面,该视频将自动播放。如何使视频每次都能自动播放?它发生在Chrome和Firefox上,所以也可能发生在其他浏览器上。
我正在为此使用YouTube iFrame Player API:https://jsfiddle.net/Sidders/69teu8zv/2/
<div id="home-video-container">
<div id="home-video"></div></div>
<script>
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('home-video', {
height: '1080',
width: '1920',
videoId: '6142uv27UuY',
playerVars: {
'autoplay': 1,
'playsinline': 0,
'autohide': 1,
'controls': 0,
'showinfo': 0,
'rel': 0,
'cc_load_policy': 0,
'suggestedQuality': 'highres'
},
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
function onPlayerReady(event) {
event.target.playVideo();
}
var done = false;
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.PLAYING && !done) {
setTimeout(fadeVideo, 64000);
done = true;
}
}
function fadeVideo() {
var video = document.getElementById("home-video-container");
video.style.WebkitTransition = 'opacity 1s';
video.style.MozTransition = 'opacity 1s';
video.style.opacity = 0;
video.style.filter = 'alpha(opacity=0)'; // IE fallback
}
</script>
您可以使用HTML或JavaScript进行此操作。
HTMLhttps://www.w3schools.com/tags/att_meta_http_equiv.asp
JavaScripthttps://www.w3schools.com/jsref/met_loc_reload.asp