2012-01-23 5 views
0

사이트를 만들고 있는데 사이트의 링크를 클릭하면 flv 경로가 업데이트되도록 설정했습니다. 그러나 링크를 클릭하면 URL이 업데이트되지만 재생되지는 않습니다. 나는 흰 상자를 얻는다.업데이트 후 flowplayer가 재생되지 않습니다

다음은 홈 페이지에서 사용하는 코드입니다. 그것은 바로

var player = flowplayer("container0",{ 
src: "/js/flowplayer-3.2.7.swf", 
wmode: 'opaque', 
debug: true 
},{ 
clip:{ 
    autoPlay: true, 
    scaling: "fit", 
    bufferLength: 4, 
    onUpdate: function(data) { 
     this.unload(); 
     console.log(data); 
     player.play(); 
    }, 
    url: videolist[0] 
}}); 

다음 (자바 스크립트 배열에 전체 URL 경로로 저장됩니다) 4 개 비디오의 첫 번째 버퍼링을 시작하고 재생 않습니다, 내 사이트에서 다음 코드를 실행 몇 가지 링크가 있습니다 :

player.getClip(0).update({ url:videolist[f] }); 

"f"는 비디오 URL의 자바 스크립트 배열 색인입니다.

업데이트가 발생하면 콘솔 로그에 개체가 표시되므로 업데이트가 진행되고 있음을 알고 있습니다. 그러나 여전히 그것은 일어나지 않습니다. 나는 약간의 아이디어를 좋아할 것입니다.

감사합니다.

답변

1

몇 가지 사소한 수정으로 코드를 가지고 놀았습니다.

javascript 함수에 withclick을 사용하여 만든 것처럼 플레이어의 URL을 업데이트합니다. 플레이어가 재생을 시작하지 않은 경우 (autoPlay를 false로 설정) 링크를 클릭하면 플레이어가 성공적으로 재생할 새 비디오로 전환됩니다. 그러나 첫 번째 비디오가 재생 중이면 클릭 한 후에 플레이어가 다시로드되지만 첫 번째 비디오는 계속 재생됩니다.

위와 같은 방법으로 귀하의 요구 사항을 충족시킬 수는 없지만 다른 방법이 도움이 될 것으로 믿습니다. 클립 자체에서 update 메소드를 호출하는 대신 player.play (url : videolist [f])를 직접 호출 할 수 있습니다. 이렇게하면 플레이어는 클립을 업데이트 할 필요없이 전달한 모든 비디오를 재생합니다.

<html>  
<head><title>Video</title><script src="/flowplayer/flowplayer-3.2.6.min.js"></script></head> 
<body> 
<a id="player"></a> 
<div> 
    <a href="javascript:update()">Update</a> 
</div> 
<script type="text/javascript"> 
function update() { 
    $f('player').play("SECONDVIDEO"); 
} 
flowplayer("player", "/flowplayer/flowplayer.unlimited-3.2.8-dev.swf", 
{ 
    clip: { 
     autoPlay: true, 
     url: "FIRSTVIDEO" 
    } 
} 
</script> 
</body> 
</html> 
+0

감사 :

다음은 내 코드입니다. 나는 단지 그것을 할 것 같아요. 나는 그것을 시도하고 알려 드리겠습니다. –

관련 문제