0

こんにちは、楽しみのためにマリオのようなゲームを作っています。腕や脚を動かすように、マリオを自分でアニメーション化することにこだわっています。私はそのコードを持っています。それを分解すると機能しますが、これまでのところ、実際に見えるようにスペースを空けることができませんでした。これまでのところ、 setTimeout と .delay を試しましたが、どちらも機能していません

ここに、.delay 関数を使用した現時点での私の js コードがあります。

function animateMario() {
    // cycles through other 4 images
    for (var i=1; i<5; i++) {
        $('#mario').attr('src', 'images/mario/mario_f_'+i+'.png').delay(100);
    }

    // returns to original image
    $('#mario').attr('src', 'images/mario/mario_f_0.png').delay(100);
};

誰かがそれを助けることができれば、それは大歓迎です:) どうもありがとうございました ご不明な点がございましたら、お尋ねください

4

2 に答える 2

0

何らかの理由で、遅延はすべての jQuery 関数で機能しないため、interval を使用する必要があります。このコードを試してください、それは私のために働いた:

function animateMario() {
    var i = 1;
    var timer = setInterval(function(){
        $('#mario').attr('src', 'images/mario/mario_f_'+i+'.png');
        i++
        if(i==5){
            clearInterval(timer);
            $('#mario').delay(1000*(i+1)).attr('src', 'images/mario/mario_f_0.png');
        }
    }, 100)
};
于 2013-06-12T22:18:27.410 に答える