2012-04-10 5 views
-1

がここにコードされている場合にのみ:私はアニメーションスクリプトが有効のみのdivを実行shoudことを次または前のスライダーをクリックしたときhttp://jsfiddle.net/duNHJ/2/jQueryのアニメーションスライダーのdivアクティブ

は基本的にアニメーションがあり、すべてがそうDIV。現在は、最初はすべてをアニメートします。 http://www.malsup.com/jquery/cycle/

を使用して

はまた、どのように有効にdivの上でアクティブなクラスを追加することができますか?

+0

jsFiddleは、デモンストレーションのために素晴らしいです問題のしかし、将来の読者のために文脈を保つために質問内に実際のコードを含めてください。 – Sparky

答えて

1

しかし私は、次の例を参照してください、アクティブ状態のクラスを削除/追加することに関して、あなたが最初の懸念に関して望んあまりわかりませんでした:

http://jsfiddle.net/duNHJ/27/

+0

は完璧なので、私はこのように使えますので、それぞれのdivで異なるアニメーションが表示されます:\t after:function(el、next_el){ $(next_el).addClass '); \t \t \t IF($( 'ページ1 ')。hasClass(' アクティブ ')){}他 \t \t \t {} \t \t \t IF($('。PAGE2 ')。hasClass(' アクティブ') ){} \t \t \t else {} }、 before:function(el){ $(el).removeClass( 'active'); } – test

+0

HTML5のカスタム属性とjQueryカスタムイベントを使用しない理由は、更新された例を参照してください。http://jsfiddle.net/duNHJ/43/ – trickyzter

+0

あなたはどちらが速いのでしょうか? – test

0

すべてのスクリプトは、ロードされるとすぐに実行されます。また、セレクタ$('.test')を使用すると、アニメーションはクラスtestのすべての要素で実行されます。 divが変更されたときにアニメートしたい。機能onBefore()を移行する前に呼び出され、onAfter()が後に呼び出され

$('#example').cycle({ 
    fx:  'scrollLeft', 
    timeout: 5000, 
    before: onBefore, 
    after: onAfter 
}); 

:jQueryのサイクルのプラグインは、これを行うためのコールバックメソッドを提供します。あなたのケースでは、単にonAfter()を使用します(インラインスクリプトを取り除く):

function onAfter() { 
    // $(this) references the current slide 
    $(this).animate({ 
     top: "100px" 
    }, 1000); 
} 

$('#s6').before('<div id="nav">').cycle({ 
    fx: 'fade', 
    timeout: 6000, 
    delay: -2000, 
    pager: '#nav', 
    next: '#next2', 
    prev: '#prev2', 
    activePagerClass: 'activeSlide', 
    after: onAfter 
}); 

デモ:http://jsfiddle.net/jtbowden/cmwc3/

私はあなたが起こるしたい正確に何をアニメーションわからないが、これはあなたが始める必要があります。

+0

私は別のアニメーションで各divを望んでいましたが、かなり近いですね。 – test

関連する問題