なぜhtml5の動画要素時間コントロールのテストがうまくいかないのですか?

var v = document.getElementsByTagNames('video')

var dispay_timeboard = function() { if(v.currentTime.toPrecision(5) == '22.866') {time_board.style.display='block'}}

// srtファイルのタイムコードは00:00:22,866なので、私は'22 .866 'に変換します

v.addEventListener('timeupdate',display_timeboard,false)

私はうまくいきますが、再生ボタンを押した後、ちょっとしたことがあります。私が作ったミスはありますし、popcorn.jsのほかにこれを処理するより成熟したフレームワークがあります。

0

1 答え

本当にあなたの問題はありませんが、 "=="で正確な時刻をチェックするのは、あなたのtimeupdateが特定の間隔で起動されないため、最良の方法ではないかもしれません。

これは、timeupdateがf.eを発生させると、比較が失敗することを意味します。 22.850および22.900である。次のようにsthを使ってみてください:

var dispay_timeboard = function() { 
   var currentTime = v.currentTime.toPrecision(5);
   if( currentTime  > '22.800' || currentTime < '22.900') 
      {time_board.style.display='block'}
}

私はmootoolsをjavascriptフレームワークとして好んでいます。 jqueryも良いです

0
追加された
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript