youtube-api - Youtube iframe api 自动播放不适用于 chrome 和视频分辨率设置不适用于所有浏览器

标签 youtube-api youtube-javascript-api youtube-iframe-api

<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('youtube-vid', { 
                    videoId: 'M7lc1UVf-VE',
                    events: {
                        'onReady': onPlayerReady,
                        'onStateChange': onPlayerStateChange
                    }
                    });
                }
                function onPlayerReady(event) {
                   event.target.playVideo(); 
                    event.target.setPlaybackQuality('hd1080'); 
                }
                function onPlayerStateChange(e) {
                    if (e.data === YT.PlayerState.ENDED) {
                        player.playVideo(); 
                      }
                      
                }
</script>

Please help me out to set youtube quality hd1080 and auto play on page load I used the above code but it not working for me

提前致谢!

最佳答案

Chrome 的自动播放政策于 2018 年 4 月发生变化 https://developers.google.com/web/updates/2017/09/autoplay-policy-changes

Google Chrome 不允许自动播放视频。如果您想自动播放,则必须将视频静音。根据政策指南。

火狐浏览器 enter image description here 谷歌浏览器 enter image description here

// This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');

tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

//    This function creates an <iframe> (and YouTube player)
//    after the API code downloads.
var player;
function onYouTubeIframeAPIReady() {
    player = new YT.Player('player', {
        height: '390',
        width: '640',
        videoId: 'M7lc1UVf-VE',
        events: {
            'onReady': onPlayerReady
        }
    });
}

//  The API will call this function when the video player is ready.
function onPlayerReady(event) {
    player.setPlaybackRate(2);
    event.target.playVideo();
}
<div id="player"></div>

关于youtube-api - Youtube iframe api 自动播放不适用于 chrome 和视频分辨率设置不适用于所有浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50507985/

相关文章:

iframe - 直接使用iframe时,youtube无法访问播放器控件

javascript - 如何使用 JavaScript 或 jQuery 发送一个简单的数字并仅在 URL 中接收?

cookies - Youtube 无 Cookie 跟踪

javascript - Youtube iFrame API 将数据从 onYouTubeIframeAPIReady 传递到 onPlayerStateChange 函数

json - 如何从 YouTube V3 api 检索 URL 值?

youtube - 当我插入iframe youtube视频不起作用时

c# - YouTube API v3 在尝试列出我的订阅时抛出 "No filter selected"错误

javascript - YouTube IFrame API 播放方法在触摸某些 Android 平板电脑之前不起作用

swift - UIWebView/WKWebView 和 youtube 流媒体视频

ios - iOS 上的 iframe 裁剪 webview