Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 自动播放在后台嵌入的YouTube视频?_Javascript_Jquery_Youtube - Fatal编程技术网

Javascript 自动播放在后台嵌入的YouTube视频?

Javascript 自动播放在后台嵌入的YouTube视频?,javascript,jquery,youtube,Javascript,Jquery,Youtube,我有一个嵌入YouTube视频的网站。我正在使用YouTube播放器API嵌入我的视频,当页面加载时,播放器设置为自动播放。我已经设置了一个listen事件,以便在当前嵌入视频播放完毕后重定向到下一个视频(我需要重定向到一个新的物理页面,而不是将下一个视频加载到API创建的现有iframe中,因为每个页面都包含特定于该视频的信息/注释) 这一切都非常有效,但前提是您打开了选项卡。如果您在后台列出视频(它们只是设置为静态图像的音频录制,没有任何可观看的内容),则当前视频结束后页面将重新定向,但Yo

我有一个嵌入YouTube视频的网站。我正在使用YouTube播放器API嵌入我的视频,当页面加载时,播放器设置为自动播放。我已经设置了一个listen事件,以便在当前嵌入视频播放完毕后重定向到下一个视频(我需要重定向到一个新的物理页面,而不是将下一个视频加载到API创建的现有iframe中,因为每个页面都包含特定于该视频的信息/注释)

这一切都非常有效,但前提是您打开了选项卡。如果您在后台列出视频(它们只是设置为静态图像的音频录制,没有任何可观看的内容),则当前视频结束后页面将重新定向,但YouTube视频将不会开始播放,直到您单击该选项卡。一旦你点击了标签,自动播放开始,视频开始。但无论标签是否打开,我都需要视频自动播放。有什么想法吗

我已经用JWplayer做过实验,重定向/自动播放效果很好,但这意味着必须自己主持视频,我更愿意在YouTube上主持。我还注意到YouTube.com没有这个问题。无论选项卡是否打开,它都将加载播放列表中的下一个视频页面并自动播放

这个问题只在Chrome、Firefox和Opera中出现,而在Edge或IE中则没有

谢谢

<div id="yt-player"></div>
<script src="http://www.youtube.com/player_api"></script>
<script>

// create youtube player
var player;
function onYouTubePlayerAPIReady(){
    player = new YT.Player('yt-player',{
        height:'433',
        width:'770',
        videoId:'xxxxxxxxxxx',
        playerVars: { 'autoplay': 1, 'controls': 1, 'html5': 1 },
        events:{
            'onReady':onPlayerReady,
            'onStateChange':onPlayerStateChange
        }
    });
}

// autoplay video
function onPlayerReady(event){
    event.target.playVideo();
}

// when video ends
function onPlayerStateChange(event) {
    if(event.data === 0 && $("#autoplayCB").is(':checked')) {  
        window.location="/nextvideo.htm";
    }
}

</script>

//创建youtube播放器
var播放器;
函数onYouTubePlayerAPIReady(){
player=新的YT.player('YT-player'{
高度:'433',
宽度:'770',
videoId:'XXXXXXXXXX',
PlayerBars:{'autoplay':1,'controls':1,'html5':1},
活动:{
“onReady”:onPlayerReady,
“onStateChange”:onPlayerStateChange
}
});
}
//自动播放视频
函数onPlayerReady(事件){
event.target.playVideo();
}
//视频结束时
函数onPlayerStateChange(事件){
如果(event.data==0&&$(“#autoplayCB”)。是(':checked'){
window.location=“/nextvideo.htm”;
}
}

我遇到了这个问题。我发现必须先创建播放器,然后才能更改使用loadVideoById的视频

https://developers.google.com/youtube/iframe_api_reference#Queueing_Functions
这里的问题是,您必须自己制作视频列表,或者找到某种方法将视频列表放入javascript数组,并在当前视频结束时调用下一个。您需要建立一个手动播放列表


唯一的另一个警告是,您必须在第一次进入页面时让视频加载,在新选项卡中打开视频而不提供选项卡焦点将阻止它初始化,直到您这样做。

我遇到了这个问题。我发现必须先创建播放器,然后才能更改使用loadVideoById的视频

https://developers.google.com/youtube/iframe_api_reference#Queueing_Functions
这里的问题是,您必须自己制作视频列表,或者找到某种方法将视频列表放入javascript数组,并在当前视频结束时调用下一个。您需要建立一个手动播放列表


唯一的另一个警告是,您必须在第一次进入页面时让视频加载,在新选项卡中打开视频而不提供选项卡焦点将阻止它初始化,直到您这样做。

这对于将下一个视频加载到预先存在的播放器非常有用,但我需要在视频播放完成后加载一个新页面,并在新页面上自动播放视频。我听说chrome去年进行了一次更新,暂停自动播放的任何背景噪音,直到你专注于该选项卡。听起来这就是这里发生的事情,但是JWplayer能够自动播放,而不必关注选项卡,这是令人困惑的:\如果你正在加载一个新页面,但它不会被关注,那么使用youtube api它将无法工作。我想YT这样做的原因之一是因为他们不希望人们把它当作播客服务。完成此操作的Chrome插件已从Chrome商店中删除。哇,我的代码今天在最新的Chrome更新中停止工作。。。Chrome开发者一定在看着我。这对将下一个视频加载到现有播放器非常有用,但我需要在视频播放完成后加载一个新页面,并在新页面上自动播放视频。我听说chrome去年进行了一次更新,暂停自动播放的任何背景噪音,直到你专注于该选项卡。听起来这就是这里发生的事情,但是JWplayer能够自动播放,而不必关注选项卡,这是令人困惑的:\如果你正在加载一个新页面,但它不会被关注,那么使用youtube api它将无法工作。我想YT这样做的原因之一是因为他们不希望人们把它当作播客服务。完成此操作的Chrome插件已从Chrome商店中删除。哇,我的代码今天在最新的Chrome更新中停止工作。。。Chrome开发者一定在监视我。