2013-02-01 2 views
0

저는 대화식 HTML5 비디오 플레이어에서 작업 중이며 현재 팝콘을 사용하는 동안 모든 작업을 수행하고 있습니다. 그러나 지금은 돌아가서 팝콘에 의존하지 않고 플레이어를 작동 시키려고합니다. . 나는 어떤을 위해 노력하고 있어요시간대 내의 HTML5 비디오

popcorn.code((
    start: 0, 
    end: 5, 
    onStart: function(options) { 
     //put code here 
    } 
}} 

하고 코드가 비디오의 시간은 이제 5 0에서 걸쳐 때 실행됩니다 popcorn.js 작업 할 때

, 당신은 같은 코드를 사용할 수 있습니다 비디오의 특정 시간대 내에서 실행되는 코드 블록이 있지만, 제대로 작동하지 않는 것처럼 보일 수 있으며, 누군가 내가이 잘못에 대해 알 수 있는지 궁금해하고있었습니다.

while (myVideo.currentTime >= 0 && myVideo.currentTime <= 5) 
{ 
    console.log(myVideo.currentTime); 
} 

이 루프도 너무 빠르게 실행되므로 브라우저가 느려지고 정지됩니다. 그러나 while 루프 대신 if 루프를 사용하려고하면 (분명히) 한 번만 검사합니다.

답변

1

while 루프보다 적은 수를 확인할 수 있습니다.

var check = setInterval(function() { 
    if (myVideo.currentTime >= 5) { 
     clearInterval(check); 
     console.log("5 seconds reached"); 
    } 
}, 500); 

사용자가 일시 중지했다가 다시 시작하거나 타임 라인에서 다른 시간으로 건너 뛰면 다시 시작할 수 있습니다.

+0

죄송합니다 ... 우리 둘 다 똑같은 답변을 생각해 냈습니다. 제가 제 게시판에 올 때까지 귀하의 답변을 보지 못했습니다. – spooky

+0

나는 모든 페이지가 비디오를 재생하지 않는 한 실제로 비디오를 재생할 때만이 기능을 사용하도록 비디오 재생 체크를 추가합니다. – nycynik

+0

두 분 모두에게 감사드립니다! 나는 그것을 처리하는 방법에 대해 완전히 공백 상태가되었지만 setInterval은 의미가 있으며 올바르게 작동하는 데 도움이됩니다. –

1

다음 기능을 사용하면 1 초에 한 번만 실행됩니다.

setInterval(function(){ 
if(myVideo.currentTime >= 0 && myVideo.currentTime <= 5){ 
console.log(myVideo.currentTime); 
} 
},1000); 

행운을 빈다!