3
$('#tab-featured').tap(function(){
    $('.home-section').fadeOut(function(){
        $('#home-featured').fadeIn();
    });
});

fadeIn()上記のコードを使用して、完了後にafterを呼び出そうとしていますfadeOut()fadeOut()うまくいきます。以前に他の人が完了した後に関数を実行しましたが、今回は機能せず、私の人生ではその理由を理解できません。

CDNから最新のjQueryを実行します。

コード:

<div id="home-mid" class="column-mid">
    <div id="home-featured" class="home-main home-section">
        <!--- Some Code --->
    </div>

    <div id="home-2" class="home-main home-section">
        <!--- Some Code --->
    </div>

    <div id="home-3" class="home-main home-section">
        <!--- Some Code --->
    </div>

    <div id="home-4" class="home-main home-section">
        <!--- Some Code --->
    </div>

    <div id="home-5" class="home-main home-section">
        <!--- Some Code --->
    </div>

    <div id="home-tabs">
        <div id="tab-featured" class="home-tab"></div>
        <div id="tab-2" class="home-tab"></div>
        <div id="tab-3" class="home-tab"></div>
        <div id="tab-4" class="home-tab"></div>
        <div id="tab-5" class="home-tab"></div>
    </div>
</div>

アップデート:

hideの代わりに試してみましたがfadeOut、うまくいきました。なぜ機能しないfadeOutのかわからない。

4

2 に答える 2

5

アニメーション関数の最初のパラメーターは期間で、コールバックは 2 番目のパラメーターです。

$('.home-section').fadeOut(250, function(){
    $('#home-featured').fadeIn();
});

ここにドキュメントがあります。

fadeOut()これは/のバグである可能性がありfadeIn()ます。なぜなら、あなたのホーム機能はホーム セクションでもあるからです。次のように回避してみてください。

$('.home-section').fadeOut(function(){
    setTimeout(function () { $('#home-featured').fadeIn(); }, 50);
});
于 2012-12-21T07:10:08.430 に答える
0

期間を渡す必要があります

$('#tab-featured').live('tap',function(event) {
    $('.home-section').fadeOut(2000, function(){
        $('#home-featured').fadeIn(200);
    });
});

また

$('#tab-featured').live('tap',function(event) {
    $('.home-section').fadeOut('slow', function(){
        $('#home-featured').fadeIn('fast');
    });
});
于 2012-12-21T07:10:56.603 に答える