首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vimeo API触发事件

Vimeo API触发事件
EN

Stack Overflow用户
提问于 2013-11-20 17:02:06
回答 3查看 4.8K关注 0票数 0

我们正在使用Vimeo托管企业培训视频,并想知道是否有方法使用API在播放完成后触发事件?!.我们正在尝试记录用户是否已经完全观看了培训材料。

欢迎任何建议。提前谢谢你。

EN

回答 3

Stack Overflow用户

发布于 2013-12-04 03:36:16

Vimeo播放器会触发许多不同的javascript事件。Finish就是这些事件之一。你可以在这里找到更多信息:https://developer.vimeo.com/player/js-api#events

票数 0
EN

Stack Overflow用户

发布于 2014-01-16 13:41:12

我将其设置为我的服务器上的一个页面,它可以工作。一旦视频播放器过了3秒,你刚才让我的函数运行的话。出现在标记内部。

我已经包含了完整的页面代码--大部分javascript来自Vimeo API示例,您不需要它。

我遇到了一些事情--我无法让它在Jquery 1.10.X上运行--看起来这可能只适用于jquery 1.7.2。

还要注意的是,一旦元素显示出来,它就会一直显示出来--所以如果你想让它在玩家倒带的时候再次隐藏起来……您必须将其内置,可能需要使用"else“语句。

最后,我只在Chrome上进行了测试,所以在投入生产之前,请与您当地的Internet Exploder确认一下。

代码语言:javascript
运行
复制
<html xmlns="http://www.w3.org/1999/xhtml">
<meta name="viewport" content="width = device-width, initial-scale = 1.0" />

<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="http://a.vimeocdn.com/js/froogaloop2.min.js"></script>
</head>
<iframe id="player1" src="http://player.vimeo.com/video/27855315?api=1&player_id=player1" width="400" height="225" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>

<p>Video status: <span class="status">...</span></p>
<p><button>Play</button> <button>Pause</button></p>
<h3 id="show"></h3><!-- thats where the message will show -->
<script>
jQuery(document).ready(function($) { // WordPress needs jquery like this...
var iframe = $('#player1')[0],
    player = $f(iframe),
    status = $('.status');

// When the player is ready, add listeners for pause, finish, and playProgress
player.addEvent('ready', function() {
    status.text('ready');

    player.addEvent('pause', onPause);
    player.addEvent('finish', onFinish);
    player.addEvent('playProgress', onPlayProgress);
});

// Call the API when a button is pressed
$('button').bind('click', function() {
    player.api($(this).text().toLowerCase());
});

function onPause(id) {
    status.text('paused');

}

function onFinish(id) {
    status.text('finished');
}

function onPlayProgress(data, id) {
    status.text(data.seconds + 's played');
    var time = data.seconds; //I added this var and the little if below...that's it.
    if (time > 3) {
    show.innerHTML = "You just made my function run."; }
}
// add an appropriate event listener


});
</script>
</html>
票数 0
EN

Stack Overflow用户

发布于 2018-02-25 21:40:43

我使用的是Vimoe player.js

代码语言:javascript
运行
复制
<script src="https://player.vimeo.com/api/player.js"></script>

下面是代码,我还集成到一个网站上,以了解有多少登录用户观看了完整的视频。

代码语言:javascript
运行
复制
player.on('ended', function(){ 
   // Video Finished 
    // ajax call for custom event in WordPress
    $.ajax({
            url : '<?php echo admin_url("admin-ajax.php" ) ?>',
            data : {
                action: "create_update_user",
                user_id : "<?php echo $user->ID; ?>",
                post_id : "<?php echo get_the_ID(); ?>",
                status : 'complete' },
            dataType : "post",
            type: "post",
            success: function(response){
            }
     });

我希望它是有用的,因为player.js比froogaloop2.min.js更有用

谢谢

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20091426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档