2016-09-29 7 views
1

50msの間隔で30シーケンスからなるアニメーションの実行をどのように遅らせることができますか?setTimeoutとsetIntervalの両方を使用できますか?

$(function() { 
    setInterval("anim1()", 50); 
    setTimeout("anim1()", 3000); /* doesn't work */ 
}); 



function anim1() { 
    var oCurBack = $('#fullback div.current'); 
    var oNxtBack = oCurBack.next(); 
    if (oNxtBack.length === 0) 
     return; 

    oNxtBack.addClass('current'); 
    oCurBack.removeClass('current').addClass('previous'); 
} 
+4

を試してみてくださいそれはあなたがここで起こっているしたいのか全く明らかではありません。 –

+0

私にガラスのようにクリア;) – mplungjan

+0

'requestAnimationFrame'を見てください。 –

答えて

3

前提:あなたは隠されている文字列を使用しているので、私が代わりに"anim1()"anim1を使用

  • を遅らせる
    • が関数に間隔を置く3秒

      後に間隔アニメーションを開始したいですeval
    • あなたは今戻った場所でアニメーションを止めたいと思うかもしれません。

    var tId; // have global id to store the interval 
    $(function() { 
        tId = setTimeout(function() { setInterval(anim1, 50) }, 3000); 
    }) 
    
    function anim1() { 
        var oCurBack = $('#fullback div.current'); 
        var oNxtBack = oCurBack.next(); 
        if (oNxtBack.length === 0) { 
        clearInterval(tId); // clear the interval now we are done 
        return; 
        } 
        oNxtBack.addClass('current'); 
        oCurBack.removeClass('current').addClass('previous'); 
    } 
    

    アニメーションを繰り返すには、すべての4秒が

    var tId1, tId2 
    $(function() { 
        tId1 = setInterval(function() { 
        var $divs = $('#fullback div.current'); 
        $divs.removeClass(current); // remove all current 
        $divs.eq(0).removeClass('previous').addClass('current'); // add on the first 
        tId2 = setInterval(anim1, 50); 
        }, 3000); 
    }); 
    
    
    function anim1() { 
        var oCurBack = $('#fullback div.current'); 
        var oNxtBack = oCurBack.next(); 
        if (oNxtBack.length === 0) { 
        clearInterval(tId2); // clear the interval now we are done 
        return; 
        } 
        oNxtBack.addClass('current'); 
        oCurBack.removeClass('current').addClass('previous'); 
    } 
    
  • +0

    なぜdownvoteですか? – mplungjan

    +2

    関連するanwserのように見えます... '実行を遅らせるにはどうすればいいですか? '... –

    +3

    私は確かにそれを落としていません。私は質問が現時点ではあまりにも不明確だと考えていますが、これは必ずしも間違っているとは限りません。 –

    関連する問題