0

トグルアニメーションのクリックに問題があります。たとえば、1回クリックして要素が下に移動し、2回目のクリックで要素が上に移動する場合などです。.toggleを試しましたが、成功せず、次のアイデアがあります。

「カルーセル」(ボタン)を10px下に移動する関数があります[トランジットプラグインを使用します]:

function carousel_4way (n, el) {

    // remove outline from clicked element
    el.blur();

    // animation
    var carousel = '#carousel-4way-nav-' + n
    var carousel_content = '#carousel-4way-' + n
        $(carousel_reset).hide();
        $(carousel).transition(
        {y: '+=10'}

        );

次に、これらのカルーセルの1つをクリックします。

$('#carousel-4way-nav-1').click(function(event){
    return carousel_4way(1, this);
    event.preventDefault();
});

非常にうまく計算され、アニメーション化するすべてのボタンのすべてのクリックを定義するだけで済みます。

このようにして、ボタンをアニメーション化して10px下に移動します{y:'+ = 10'}が、もう一度クリックして上に移動したいので、{y:'-=10'}が必要です。

私はこのようなものを混ぜました:

function carousel_4way (n, el, m) {
$(carousel).transition(
    {y: m + '=10'}
    );


$('#carousel-4way-nav-1').click(function(event){
return carousel_4way(1, this, '+');
event.preventDefault();
});

今、私はそれに別のreturn carousel_4way(1、this、'-');を追加する必要があります。そして、これは私が立ち往生している場所です。出来ますか?

4

1 に答える 1

0

あなたは次のような意味です:

var transitionState = '-'; // this should be global

// the following will always evaluate to what transitionState currently is not (toggle)
return carousel_4way(1, this, (transitionState == '-') ? '+' : '-'); 

で更新transitionStateしてcarousel_4wayください。

于 2013-02-12T12:13:42.513 に答える