Javascript Vimeo frogaloop2 getCurrentTime不';t火
首先,我做了一个JSFIDLE,你可以。 代码基本上加载jquery和frogaloop库,然后尝试获取视频的当前时间。 看起来是这样的:Javascript Vimeo frogaloop2 getCurrentTime不';t火,javascript,vimeo,vimeo-player,Javascript,Vimeo,Vimeo Player,首先,我做了一个JSFIDLE,你可以。 代码基本上加载jquery和frogaloop库,然后尝试获取视频的当前时间。 看起来是这样的: var listener = function (event) { $("#output").html($("#output").html() + "<BR>" + "Event got to MY listener: " + event.data); } if (window.addEventListener) { window
var listener = function (event) {
$("#output").html($("#output").html() + "<BR>" + "Event got to MY listener: " + event.data);
}
if (window.addEventListener) {
window.addEventListener("message", listener, false);
} else {
window.attachEvent("onmessage", listener, false);
}
$(window).load(function () {
var player = $f($("#vmtest")[0]);
setTimeout(function () {
player.api("pause");
player.api("getCurrentTime", function (value, player_id) {
$("#output").html($("#output").html() + "<BR>" + "get current time callback");
$("#output").html($("#output").html() + "<BR>" + value);
});
}, 5000);
});
var listener=函数(事件){
$(“#输出”).html($(“#输出”).html()+”
“+”事件到达我的侦听器:“+Event.data”);
}
if(window.addEventListener){
addEventListener(“消息”,侦听器,false);
}否则{
attachEvent(“onmessage”,listener,false);
}
$(窗口)。加载(函数(){
var player=$f($(“#vmtest”)[0]);
setTimeout(函数(){
player.api(“暂停”);
api(“getCurrentTime”,函数(值,播放器id){
$(“#输出”).html($(“#输出”).html()+“
”+“获取当前时间回调”);
$(“#输出”).html($(“#输出”).html()+”
“+value);
});
}, 5000);
});
问题是:我的窗口监听器得到回调,但不是frogaloop监听器(否则我会期望看到回调触发)
第二个问题:没有迹象表明是哪个玩家触发了事件(比如playerid),因此我无法确定页面上是否有多个玩家(在我更复杂的场景中就是这种情况,这里没有显示)
有人在这方面取得过成功吗?我做错了什么?啊哈!我找到了答案(当所有其他方法都失败时,RTFM!)
我必须将&player_id=vmtest添加到视频url中,以便vimeo知道它指的是哪个播放器!他们说只有在嵌入多个玩家时才需要这个,但他们错了!即使只有一个玩家,你也必须这么做
好了,现在它起作用了:)事实上,他们在文档中说,即使你只有一个播放器,如果你使用froogaloop,你也需要在url中输入&player_id=whateveryouridis