0

連携する2つの機能があります。1 つfadeOut()は目に見える記事に、もう 1fadeIn()つは前の記事が退色した後に新しい記事に。どういうわけか、2 番目の関数は最初の関数が終了するのを待ちません。私のコードは次のとおりです。

itemFadeTo: function( item ) {
    
    $( '#item_container article:visible' )
    .stop(true, true)
    .fadeOut( 750, $().itemFadeIn( item ) );

},

itemFadeIn: function( item) {

    $( item )
    .css({ opacity: 0 })
    .show()
    .stop(true, true)
    .animate({ opacity: 1}, 750);

}

次のように呼び出されます。

var new_item= $( 'article#new_item' );

$().itemFadeTo( new_item);

どんな助けでも大歓迎です!

4

1 に答える 1

0

問題は.fadeOut()、関数を 2 番目のパラメーターとして期待しているが、関数を渡していないことです。関数を呼び出して、その結果を 2 番目のパラメーターとして渡しています。

.fadeOut( 750, $().itemFadeIn( item ) );

つまり、この$().itemFadeIn( item)部分はへの呼び出しの.fadeOut()に発生します。

代わりにこれを試してください:

.fadeOut( 750, function() { $().itemFadeIn( item ); });
于 2013-03-07T10:32:19.337 に答える