Javascript 使用youtube api禁用手机上的youtube视频播放器

Javascript 使用youtube api禁用手机上的youtube视频播放器,javascript,youtube,youtube-api,Javascript,Youtube,Youtube Api,我将youtube api与以下javascript/html代码一起使用: <div class="screen ${sVideo.options.muted ? 'mute' : '' @ context='styleString'}" id="ytbg-${sVideo.id}" data-autoplay="${sVideo.options.autoplay ? 'true' : 'false'}" data-loop="${sVideo.options.loop ? 'true'

我将youtube api与以下javascript/html代码一起使用:

<div class="screen ${sVideo.options.muted ? 'mute' : '' @ context='styleString'}" id="ytbg-${sVideo.id}" data-autoplay="${sVideo.options.autoplay ? 'true' : 'false'}" data-loop="${sVideo.options.loop ? 'true' : 'false'}" data-muted="${sVideo.options.muted ? 'true' : 'false'}" data-videoid="${sVideo.src}"></div>

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 tv,
    playerDefaults = {autoplay: 0, autohide: 1, modestbranding: 1, rel: 0, showinfo: 0, controls: 0, disablekb: 1, enablejsapi: 0, iv_load_policy: 3, loop: 0};


function onYouTubePlayerAPIReady() {
    $("div[id^=ytbg-]").each(function(index, element){
        if($(element).data("videoid")) {
            var videourl = $(element).data("videoid");
            var muted = $(element).data("muted");
            var autoplay = $(element).data("autoplay");
            var loop = $(element).data("loop");
            var id = $(element).attr('id');
            playerDefaults.autoplay = autoplay ? 1 : 0;
            playerDefaults.loop = loop ? 1 : 0;
            if(!tv) {
                tv = {};
            }
            tv[videourl] = {
                videoObject: {},
                vid: {'videoId': videourl, 'suggestedQuality': 'default'},
                mute: muted
            };
            tv[videourl].videoObject = new YT.Player(id, {events: {'onReady': onPlayerReady, 'onStateChange': onPlayerStateChange}, playerVars: playerDefaults, width: '100%', height: '100%'});
        }
    });
}


function onPlayerReady(event) {
    if(!tv) return;
    var iframe = event.target.getIframe();
    var videourl = $(iframe).data("videoid");
    if(!tv[videourl]) return;
    if(!tv[videourl].videoObject) return;
    tv[videourl].videoObject.loadVideoById({videoId: videourl, suggestedQuality:'default'});
    if(tv[videourl].mute) {
        tv[videourl].videoObject.mute();
    }
}
function onPlayerStateChange(e) {
    var iframe = e.target.getIframe();
    var id = $(iframe).attr('id');
    var videourl = $(iframe).data("videoid");
    if (e.data === 1) {
        $('#' + id).addClass('active');
    } else if (e.data === 0){
        tv[videourl].videoObject.seekTo(tv[videourl].vid.startSeconds);
    }
}

var tag=document.createElement('script');
tag.src=https://www.youtube.com/player_api';
var firstScriptTag=document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(标记,firstScriptTag);
var电视台,
playerDefaults={autoplay:0,autohide:1,autobranding:1,rel:0,showinfo:0,controls:0,disablekb:1,enablejsapi:0,iv_load_policy:3,loop:0};
函数onYouTubePlayerAPIReady(){
$(“div[id^=ytbg-])。每个(函数(索引,元素){
if($(元素).data(“videoid”)){
var videourl=$(元素).data(“videoid”);
var muted=$(元素).data(“muted”);
var autoplay=$(元素).data(“autoplay”);
变量循环=$(元素).data(“循环”);
var id=$(元素).attr('id');
playerDefaults.autoplay=autoplay?1:0;
playerDefaults.loop=循环?1:0;
如果(!电视){
电视={};
}
电视[视频网址]={
视频对象:{},
视频:{'videoId':视频URL,'suggestedQuality':'default'},
静音:静音
};
tv[videourl].videoObject=new YT.Player(id,{events:{'onReady':onPlayerReady,'onStateChange':onPlayerStateChange},PlayerBars:playerDefaults,宽度:“100%”,高度:“100%”);
}
});
}
函数onPlayerReady(事件){
如果(!tv)返回;
var iframe=event.target.getIframe();
var videourl=$(iframe).data(“videoid”);
如果(!tv[videourl])返回;
如果(!tv[videourl].videoObject)返回;
tv[videourl].videoObject.loadVideoById({videoId:videourl,suggestedQuality:'default'});
如果(电视[视频URL].静音){
tv[videourl].videoObject.mute();
}
}
函数onPlayerStateChange(e){
var iframe=e.target.getIframe();
var id=$(iframe.attr('id');
var videourl=$(iframe).data(“videoid”);
如果(例如,数据===1){
$('#'+id).addClass('active');
}否则如果(如数据===0){
tv[videourl].videoObject.seekTo(tv[videourl].vid.startSeconds);
}
}
我需要知道的是,当分辨率为移动时,如何禁用播放器。有没有办法禁用播放机并再次启用它?

您可以使用,此对象的属性标识可用于自定义播放机

var player;

function onYouTubeIframeAPIReady() {
player = new YT.Player('video-placeholder', {
width: 600,
height: 400,
videoId: 'Xa0Q0J5tOP0',
playerVars: {
'autoplay': 0,
'autohide': 1, 
'modestbranding' : 1,
'rel' : 0

},
events: {
onReady: initialize
}
});
}
有关详细信息,请选中此项和相关项。

您可以使用,此对象的属性标识可用于自定义播放机

var player;

function onYouTubeIframeAPIReady() {
player = new YT.Player('video-placeholder', {
width: 600,
height: 400,
videoId: 'Xa0Q0J5tOP0',
playerVars: {
'autoplay': 0,
'autohide': 1, 
'modestbranding' : 1,
'rel' : 0

},
events: {
onReady: initialize
}
});
}
有关更多信息,请检查此项和相关信息