好的我正在使用vimeo api,它为我的功能提供了一些包含我的视频播放百分比的数据。我希望用这个来查找视频何时结束,然后“重新打开”。这是我的代码:
function onplayProgress(data, id) {
$('#bottomtag').text(data.percent*100 + '% played');
if ( data.percent == '1') {
$('body').animate({ backgroundColor: 'gray' }, 3000);
}
}
#bottomtag只是为了调试,但它正确地显示了进度并最终达到100%并保持不变。所以我无法理解为什么我的动画没有发生。我真的很密集吗?我觉得在语义上应该有'when'而不是'if'但是不存在。
========= EDIT =========
正如Zeta所指出的那样,我可以使用一个Finish事件。但是我希望我的“灯光”达到99%,并且我也想知道为什么我的代码不起作用。我试过〜
if ( data.percent == '0.990')
〜它仍然无法正常工作。关于调用这个函数,它与Vimeo api挂钩:
player.addEvent('playProgress', onplayProgress
);
答案 0 :(得分:1)
API提供finish
事件。请改用此选项来检查您的视频是否已播放完毕。
这有点棘手,但仍然很容易实现:
function onplayProgress(data, id) {
$('#bottomtag').text(data.percent*100 + '% played');
if ( data.percent >= 0.990 && $('body').data("has-been-animated") !== true) {
$('body').animate({ backgroundColor: 'gray' }, 3000);
$('body').data("has-been-animated",true);
}
}
答案 1 :(得分:0)
如果data.percent = '1.00'
的值(作为字符串),那么您的if将失败,因为'1' != '1.00'