0

関数を実行し、2 番目の関数を実行する方法を理解しようとしています... その後、元の関数に戻ります。(ループ?)

あなたが私のフィドルで見ることができるように:...私は、男がクリックですぐに歩けるようにしようとしています。もう一度クリックすると、彼は元の位置に戻ります。3 回目のクリックで、パターンを続けてもらいたい(例: 右、左、右、左...)

これは、私が取り組んでいるポイント アンド クリック ゲーム用です (jquery/javascript を学習するという目標 [動機])。

ご理解とご協力をお願いいたします。n00bコードですみません…

$(document).ready(function() {
    $(".img").one("click", function() {
        $(".img").attr('src', "http://www.kolbaba.com/uploads/jsfiddle/tempImgs/walking.gif");
        $(".img").animate({
            "left": "+=300px"
        }, 1000, function() {
            $(".img").attr('src', "http://www.kolbaba.com/uploads/jsfiddle/tempImgs/standing.gif");
            $(".img").click(function() {
                $(".img").attr('src', "http://www.kolbaba.com/uploads/jsfiddle/tempImgs/walkingLeft.gif");
                $(".img").animate({
                    "left": "-=300px"
                }, 1000, function() {
                    $(".img").attr('src', "http://www.kolbaba.com/uploads/jsfiddle/tempImgs/standing.gif");
                    event.preventDefault();
                });
            });
        });
    });
});
4

2 に答える 2

3

.toggle()、を使用します

したがって、コードは次のようになります。

$(".img").toggle(function(){

    //Code to go right

}, function(){

    //Code to go left

});

.toggle()について読む

于 2012-12-12T07:01:33.407 に答える
1

トグルはうまく機能し、簡単なデモを行いました。

しかし、トグルを使用したくない人のための別の解決策を見つけました.Toogleの使用に時間がかかることは知っていますが、ここで共有することを考えました.

$(document).ready(function(){
var count=1
    $(".img").click("click", function(){

    count=count+1;
if(count%2==0)
{

$(".img").attr('src',"http://www.kolbaba.com/uploads/jsfiddle/tempImgs/walking.gif");
    $(".img").animate({"left": "+=300px"}, 1000, function() {



        $(".img").attr('src',"http://www.kolbaba.com/uploads/jsfiddle/tempImgs/standing.gif");
    });
}
else
{

$(".img").attr('src',"http://www.kolbaba.com/uploads/jsfiddle/tempImgs/walkingLeft.gif");
              $(".img").animate({"left": "-=300px"}, 1000, function() {
            $(".img").attr('src',"http://www.kolbaba.com/uploads/jsfiddle/tempImgs/standing.gif");
              });
}


    });

});

于 2012-12-12T10:15:17.590 に答える