【发布时间】:2013-04-05 02:51:08
【问题描述】:
我只是想知道如何在 Vimeo API (http://player.vimeo.com/playground) 上检测视频是否正在播放或暂停(甚至加载/缓冲),这与 Youtube 有很大不同!
乔
【问题讨论】:
标签: javascript api vimeo vimeo-player
我只是想知道如何在 Vimeo API (http://player.vimeo.com/playground) 上检测视频是否正在播放或暂停(甚至加载/缓冲),这与 Youtube 有很大不同!
乔
【问题讨论】:
标签: javascript api vimeo vimeo-player
const iframe = document.querySelector('iframe');
const player = new Player(iframe);
player.loadVideo(123456).then(() => {
player.ready().then(() => {
player.on('pause', (data) => console.log(data));
}).catch((err) => console.log(err));
})
【讨论】:
var onPlay = function(data) {
console.log("play")
};
var onPause = function(data) {
console.log("pause")
};
player.addEvent('play', onPlay);
player.addEvent('pause', onPause);
【讨论】:
看起来他们的文档自上次回答以来略有变化。获得播放器实例后,您可以通过以下方式检查播放/暂停状态:
player.getPaused().then(function(paused) {
if(paused){
player.play();
}else{
player.pause();
}
});
来自 vimeo player api docs
【讨论】:
事实证明,您必须将回调作为第二个参数传递给 .api(),它将接收 true / false 作为播放器的暂停状态:
player.api('paused', function(paused) {
// paused will be true or false here
});
【讨论】:
查看最富有的example of using vimeo Player Javascript API。它使用 froogaloop 库来通信 vimeo JS API。不要忘记为 iframe 元素添加 id 和参数。
<iframe id="player_1" src="http://player.vimeo.com/video/7100569?api=1&player_id=player_1" width="540" height="304" frameborder="0" webkitallowfullscreen></iframe>
【讨论】:
Vimeo Player JavaScript API 提供以下方法:
paused():Boolean
如果视频正在播放,则返回 false,否则返回 true。
【讨论】: