2

当用户单击网站上的特定按钮时,我正在使用带有 froogaloop 库的 vimeo player js API 来启动视频。

这是我嵌入视频的方式:

<iframe id="my_video" src="video_source?title=0&byline=0&portrait=0&color=fd735b&api=1&player_id=my_video" width="940" height="529" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>

以下是我使用 js API 的方式:

var iframe = $('#my_video')[0];
var player = $f(iframe);

player.addEvent('ready', function() {

    $("#watch_video_wrapper").bind('click', function(){
    $("html, body").animate({ scrollTop: $('#video_page').offset().top }, 3500);
    player.api('play');
    });

});

因此,当播放器准备好时,我将“点击”事件绑定到“观看视频”父容器。它适用于桌面。但是当我在 iPhone 3GS 或 iPad 模拟器上尝试时,视频无法启动。我还检查了网站上的 vimeo 示例:

示例 1 示例 2

而且它们也不适用于移动设备。

在移动设备上,只有在您使用播放器中的播放按钮手动启动视频后,此 API 才会起作用。但是如果你加载页面,不要手动启动视频并尝试用 JS 播放它 - 它不起作用。

有人遇到过这个问题吗?还是我做错了什么?

4

3 回答 3

1

我不认为这是一个 vimeo 问题 - 它与 IOS 和 Android 的政策有关,即在没有用户交互的情况下不播放视频。看到这个答案:在 iPhone 上,Vimeo Javascript API .play() 函数在视频播放之前不起作用

于 2014-09-25T21:21:30.327 回答
1

如果你看这里,它有一个兼容性表。似乎不支持带有播放选项的移动设备。

https://developer.vimeo.com/player/js-api#function-compatibility

于 2015-01-14T20:59:03.967 回答
0

如果您拥有“Vimeo Plus”帐户,Vimeo 只会制作电影的“移动安全”版本。因此,如果您没有 plus 帐户,则视频将永远不会“准备就绪”(= 已加载)。

于 2013-11-20T12:54:36.387 回答