2016-03-16 3 views
1

Мне нужно создать пользовательское событие в видео 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!!!') 
}); 

Как я могу добиться этого?

ответ

2

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); 
+0

Спасибо, что было действительно полезно –

Смежные вопросы