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

我正在尝试使用上面的代码fadeIn()在完成后调用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

动画函数的第一个参数是持续时间,回调是第二个:

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

这是文档

这可能是fadeOut()/中的一个错误,fadeIn()因为您的 home-featured 也是一个 home-section。尝试像这样解决它:

$('.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 回答