2012-12-03 45 views
4

触发事件我想说明()一个div当我的HTML5视频播放器达到一定的时间。 我能得到一个div显示在视频的结尾,但我不知道如何展现div时的视频是在一个特定的时间,如0:06。从HTML5视频播放器使用jQuery

<div id = "showdiv" style="display:none" align="center"> 
     this is the message that will pop up. 
</div> 

<video id='myVideo' align="center" margin-top="100px" class='video-js 
     vjs-default-skin' preload='auto' data-setup='{}' width='800' height='446'> 
<source src='myVideo.mp4' type='video/mp4'l></source> 
<script> 
document.getElementById('myVideo').addEventListener('ended',myHandler,false); 
function myHandler(e) { 
    if(!e) { e = window.event; } 
    $("#showdiv").toggle("slow"); 
} 
</script> 

回答

5

看看timeupdate事件。 https://developer.mozilla.org/en-US/docs/Mozilla_event_reference/timeupdate

var runAtTime = function(handler, time) { 
var wrapped = function() { 
    if(this.currentTime >= time) { 
     $(this).off('timeupdate', wrapped); 
     return handler.apply(this, arguments); 
    } 
} 
return wrapped; 
}; 

$('#myVideo').on('timeupdate', runAtTime(myHandler, 3)); 

http://jsfiddle.net/tarabyte/XTEWW/1/

+0

谢谢你的回答,但似乎并没有为我工作。必须与.addEventListener('timeupdate',runAtTime(myHandler,6),false)有关。 – Emanegux

+0

检查控制台是否有任何错误。 –

+0

我创建了一个小提琴:http://jsfiddle.net/tarabyte/XTEWW/1/。它应该工作。 –