2011-10-25 11 views
1

私は、ループする必要がある特定のセグメントを持つビデオを持っています。私の問題は、iOS 5では、3回目の更新時にvideoElem.currentTimeを更新した後、モバイルSafariはその属性の更新を停止します。iOS 4.3/5で手動でhtml5ビデオをループするにはどうすればよいですか?

iOS 4.3では、断続的に動作を停止しているようです。 currentTimeに何が壊れていて、何が回避策ですか?

Btw、currentTimeを小数点以下1桁で浮動小数点に設定しようとしました&私は> 0に設定しようとしました。どちらも成功を収めていません。

サンプルコード:

window.setInterval(startTimer, 50); //ms 

// function to begin the timer 
var frameNum = 0; 
function startTimer() { 

    frameNum++; 

    if (frameNum % 5 === 0) 
    { 
    console.log(videoElem.currentTime); 
    } 

    if (videoElem.currentTime >= 7) { 
    videoElem.currentTime = 1; 
    videoElem.play(); 
    } 
} 
+0

あなたはとても近づいています。下の私の答えを見てください。 – Raptor

答えて

0

には、JavaScript(Source)で、次のイベントリスナーを追加します。

UPDATE:プレイ1 - 無限ループで7秒

function restartVideo(){ 
    videoElem.currentTime = 0.1; //setting to zero breaks iOS 3.2, the value won't update, values smaller than 0.1 was causing bug as well. 
    videoElem.play(); 
} 
function videoTick(){ 
    if(videoElem.currentTime > 7) { 
     restartVideo(); 
    } 
} 

// check progress every 1 second 
window.setInterval(videoTick, 1000); 

参照のデモをiDeviceのリンク:http://raptor.hk/dev/video.html

更新2:デモリンクのビデオのビデオコントロールが削除されました。まだiOSで働いています。

+0

それでも動作しません。ビデオは必ずしも7秒で終了するわけではありません。終了したイベントが発生しないようにセグメントをループする必要があります(たとえば、20秒の動画の1〜7)。 – ikrima

+0

あなたのコメントに基づいて更新されました。 – Raptor

+0

実際、「コントロール」タグを削除しても機能しないことがわかりました。 CurrentTimeはもう更新されません – ikrima

関連する問題