0

「<<」と「>>」の2つのボタンのいずれかをクリックすると、画像(棒人間の画像)が左から右に移動します。これが私のコードです、

function personLeft() {
                $('#img').animate({left:'50px'});
            }
function personRight() {
                $('#img').animate({right:'50px'});
            }

これがボタンです、

<button id='left' onclick='personRight()'><<</button>
<button id='right' onclick='personLeft()'>>></button>

何らかの理由で、これは機能しません。それは彼を右に一度、または左に一度だけ移動させます。私は代わりにこれをやってみました:

$(document).ready(function(){
    $('#left').click(function(){
        $('#img').animate({left:'50px'});
    });
    $('#right').click(function(){
        $('#img').animate({left:'50px'});
    });
});

しかし、それは関数と同じことをしました。私が正確に何を意味するのかを知る必要がある場合は、ここにリンクがあります。

ですから、私が知りたいのは、右ボタンをクリックするたびに50ピクセル右に移動し、左ボタンをクリックするたびに50ピクセル左に移動するようにする方法です。

4

4 に答える 4

1

現在、位置を50pxに設定しているだけです。実行したいのは、現在の位置から50pxを追加することです。

$('#left').click(function(){
    $('#img').animate({
        left:'+=50px'
    });
});

詳細については、 http://www.w3schools.com/jquery/jquery_animate.asp-相対値の使用を確認してください

于 2013-02-02T21:21:29.770 に答える
0

要素を左に移動してみることができます。

$('#left').click(function(){
    $('#img').animate({left:'-50px'});
});
于 2013-02-02T21:15:33.690 に答える
0

左に移動するには、これを試してください

$('#img').animate({left:'-50px'});
于 2013-02-02T21:16:29.897 に答える
0

直接指定する代わりに50px、前の値にそれを加算または減算する必要があります。

次のようなことをしてみてください

$('#left').click(function(){
    var left = parseInt($('#img').css('left'));
    $('#img').animate({left:(left - 50) + 'px'});
});

そして、似たようなもの#right

于 2013-02-02T21:18:03.043 に答える