0
switch (e.keyCode) {

    case 32: 
        $("#Main").prepend('<div class="Bomb" style="absolute; top:' + position.top + 'px; left: '+ position.left +'px;"></div>');

        setTimeout( function(){ 

            var BombPos = $('.Bomb').position();

            var BombPosTopb = BombPos.top;
            var BombPosLeftb = BombPos.left;
            var BombPosTopt = BombPos.top;
            var BombPosLeftt = BombPos.left;
            var BombPosTopl = BombPos.top;
            var BombPosLeftl = BombPos.left;
            var BombPosTopr = BombPos.top;
            var BombPosLeftr = BombPos.left;
            $(this).remove();

            .... More stuff

            if (CheckRight == false){
                $("#Main").prepend('<div class="Effect" style="absolute; top:' + BombPosTopr + 'px; left: '+ BombPosLeftr +'px;"></div>');
                BombPosLeftr += 30;
            }
        };

        setTimeout( function(){ 
            $('.Effect').remove();
        }
        , 1000 );
    }
    , 1500 );

私のプロジェクトは Bomberman と呼ばれ、複数の爆弾を生成しようとしています。このコードの問題: オブジェクトを生成すると、動作し、問題なく動作します。

しかし、スペースバーを複数回クリックして複数の爆弾を置くと、それらはすべて同時に消えます。

小さな爆弾のそれぞれに「個別のタイマー」を持たせて、一度にではなく、スペースバーをクリックすると1〜2秒後に消えるようにしたいだけです。

4

2 に答える 2