0

我想要做的是创建将出现在视频上的字幕。我需要这些字幕在我播放视频时开始出现,并且我希望它们在我暂停视频时暂停。这就是我所拥有的:

  <script>
  var hour = parseInt(js_arr[j].substring(0,1));
    var min = parseInt(js_arr[j].substring(3,4));
    var seconds= parseInt(js_arr[j].substring(6,7));
    var mil_sec = parseInt(js_arr[j].substring(9,11));
    var time = (hour*3600000)+(min*60000) +(seconds*1000)+mil_sec ;

    function timeout(){
    setTimeout(function()
    {


  if(true)
  {
  document.getElementById('subs').innerHTML = js_arr[i];
              i=i+4;
            j=j+4;
            hour = parseInt(js_arr[j].substring(0,1));
            min = parseInt(js_arr[j].substring(3,4));
            seconds = parseInt(js_arr[j].substring(6,7));
            mil_sec = parseInt(js_arr[j].substring(9,11));
            time = (hour*3600000)+(min*60000)+(seconds*1000)+mil_sec;

            timeout();
     }
      else{
        timeout();
      }


    },time);
}

</script>

我被困在 if 语句中应该做的事情上,以使它做我需要做的事情。

4

2 回答 2

2

查看http://developer.vimeo.com/player/js-api的文档可以看到有一个功能:

paused():Boolean 如果视频正在播放,则返回 false,否则返回 true。

你认为你可以使用它?

让我知道你的想法。

于 2014-02-28T12:21:38.897 回答
0

您可以使用以下代码向该播放器添加事件:

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');
}

谢谢

JFIT

于 2014-02-28T12:23:05.157 回答