【问题标题】:Pausing a non playing video removes thumbnail - postMessage Javascript Youtube API暂停未播放的视频会删除缩略图 - postMessage Javascript Youtube API
【发布时间】:2016-06-06 09:45:25
【问题描述】:

我注意到暂停未播放的视频会导致其预览/缩略图图像被删除。

我为此使用the Javascript Youtube API

有没有办法使用 API 来阻止它? 我宁愿不必检查视频是否正在播放,因为这意味着更多的代码。

我可能不得不使用 new YT.player() 函数,动态加载 Youtube API,监听 onStateChange 事件,保留可能的视频列表及其状态...

Reproduction online

$('#pauseVideo').click(function(){
    pauseVideo();
});

function pauseVideo(){
    var video = $('#myVideo');
    var element = video.get(0);

    if (/youtube\.com\/embed\//.test(video.attr('src'))) {
        video.get(0).contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}', '*');
    }
}

【问题讨论】:

  • 嗨,Alvaro,您还在遇到这个问题吗?
  • @d.datul1990 是的。只需检查小提琴即可重现它。

标签: javascript youtube youtube-api youtube-javascript-api


【解决方案1】:

如果您将链接直接作为 iframe 插入,则大多数选项都以 GET parameters 的形式工作。尝试将controls=0&showinfo=0 添加到视频网址。

showinfo 支持的值为 01。如果播放器正在加载播放列表,并且您明确将参数值设置为 1,那么在加载时,播放器还将显示播放列表中视频的缩略图。请注意,此功能仅支持 AS3 播放器。

或者

尝试使用queuing functions for videoscueVideoById方法。该函数加载指定视频的缩略图并准备播放器播放视频。

  • 参数语法

    player.cueVideoById(videoId:String,
    startSeconds:Number,
    suggestedQuality:String):Void
    
  • 对象语法

    player.cueVideoById({videoId:String,
    startSeconds:Number,
    endSeconds:Number,
    suggestedQuality:String}):Void
    

【讨论】:

  • 这些解决方案似乎都不能解决停止视频时的问题。 Here's the fiddle with showinfo=1.
猜你喜欢
  • 1970-01-01
  • 2014-04-22
  • 1970-01-01
  • 2014-08-30
  • 2013-08-16
  • 2018-05-28
  • 2012-05-06
  • 2012-07-02
  • 1970-01-01
相关资源
最近更新 更多