javascript - 在video-js中如何创建自定义事件?

标签 javascript html5-video dom-events video.js

我需要在视频 JS 中创建一个自定义事件,该事件会在播放期间的特定时间点触发。

例如:

player.on('timeupdate',function(){
    if(player.currentTime> 50){
        // trigger some custom event like 'played50Second'
    }
});

然后我想做的是:

player.on('played50Second',function(evt){
    console.log('Great Job, you played 50 second of the video!!!')
});

我怎样才能做到这一点?

最佳答案

player.trigger('played50Second');

您可能想确保只触发一次而不是每次 currentTime() 大于 50 时。currentTime 是 video.js API 中的一个函数, 所以 player.currentTime() > 50

    var player = videojs('my_player');
    var timeCheck = function() {
      if (player.currentTime() > 50) {
        player.off('timeupdate', timeCheck);
        player.trigger('played50Second');
      }
    };
    player.on('played50Second', function(){
      console.log('...');
    });
    player.on('timeupdate', timeCheck);

关于javascript - 在video-js中如何创建自定义事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36041189/

相关文章:

javascript - clearTimeout 似乎没有清除全局定义的计时器 ID

javascript - 如何在事件总线上存储 'global var'

javascript - 如何使用jquery或javascript动态添加对象标签到html5视频标签

javascript - 如何使用事件监听器将 <textarea> 的内容复制到变量中?

javascript - 取消 html5 视频下载

html - 如何让视频适合div?

javascript - 如何 Hook 页面范围的点击事件?

javascript - 如何从 UIWebView 中的 <img> 标签获取图像数据

javascript - 有没有更好的方法来 'fake' 链接的 href 属性?

javascript - javascript中的实例数组