javascript - Vimeo javascript api player.play() 不播放

标签 javascript api video vimeo autoplay

这种奇怪的行为似乎是在上周左右开始的。

下面的 html/javascript 组合应该加载一个 Vimeo 视频,然后当用户按下播放键时,它应该加载并播放另一个视频。如果您想在主视频之前播放前置广告,这会很有用。

如果您在桌面浏览器(我试过 Safari、Chrome 和 Firefox)上测试它,它会加载第二个视频,然后暂停。更奇怪的是,它有时第一次工作,然后如果您重新加载页面并重试,问题就会出现。

如果有任何关于如何解决此问题的想法,我们将不胜感激。

<iframe allowfullscreen="" scrolling="no" src="https://player.vimeo.com/video/258684937" width="500" height="281" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen allow="autoplay; encrypted-media"></iframe>

<script src="https://player.vimeo.com/api/player.js"></script>

<script>
var iframe = document.querySelector('iframe');
var player = new Vimeo.Player(iframe);

player.on('play', function(){
    player.off('play')
    player.loadVideo(76979871).then(function(){
        player.setAutopause(false).then(function(autopause) {
            player.play();
       });
    });
});
</script>

最佳答案

一个简单的解决方法是延迟 player.play() 调用...

var iframe = document.querySelector('iframe');
var player = new Vimeo.Player(iframe);

player.on('play', function(){
    player.off('play')
    player.loadVideo(76979871).then(function(){
        player.setAutopause(false).then(function(autopause) {
          // wait 1 second then play  
          setTimeout(play2,1000);
       });
    });
});
function play2(){
  player.play();
}

关于javascript - Vimeo javascript api player.play() 不播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51001654/

相关文章:

javascript - Node.js 游戏服务器同时运行多个游戏

javascript - 在 Angular 6 中创建一个秒表

api - 在 openAPI 方面,有没有集中的方法来限制 api 暴露给 swagger ui?

python - 如何列出 Google Merchant Center Feed

javascript - 单击时显示/隐藏按钮

javascript - 在 Node 中进行导入时避免相对路径

api - 用于 REST API 的帐户设置 - 签名或证书凭据选项?

video - 如何在 MP4 上叠加透明视频(mp4)?

bash - 在 BASH 脚本中连接视频文件后报告错误的视频时长

ruby - 使用 ruby​​ 读取视频文件元数据