現在のビデオが終了したら、HTML5 ビデオと jQuery bind 関数を使用してフェードインし、次のビデオを再生する単純な php ページを作成しています。
関数を終了イベントにバインドするとうまくいきますが、ビデオが終了する 20 秒前にフェードイン & 再生関数 (たとえば) を起動したいと思います。
しかし、私はこの魔法を実現する方法を理解できないようです. これは可能ですか?
私のHTML:
<video controls preload="auto">
<source src="sequence01.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
</video>
<video controls preload="auto">
<source src="sequence01.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
</video>
私のjQuery:
$('video').bind("ended", function(){
$(this).fadeOut(20000).next().fadeIn(20000).get(0).play();
});
解決しました!
$('video').on('timeupdate', function(event) {
var current = Math.round(event.target.currentTime * 1000);
var total = Math.round(event.target.duration * 1000);
if ( ( total - current ) < 20000 ) {
$(this).fadeOut(2000).next().fadeIn(2000).get(0).play();
}
});
助けてくれてありがとう、私はあなたの素晴らしいコメントを使って答えをまとめることができました、そしてこの他の一見無関係なSO投稿:
キャッチされていない TypeError: オブジェクト [オブジェクト オブジェクト] にメソッド 'addEventlistner' がありません
誰かがこれをまとめるためのよりクリーンな方法を持っているなら、それは素晴らしいことですが、これは私の目的にはかなりうまく機能しているようです.