【问题标题】:Simple fade in fade out div with jquery on click点击时使用jquery简单淡入淡出div
【发布时间】:2012-09-17 01:27:41
【问题描述】:

此代码在此处有效,您可以在此处阅读答案-我对其进行编辑以供将来参考。

HTML

<div><a href="#" id="btn">Show bank div and hide fancy div</a></div>
<div id="btn-bk"><a href="#">back</a></div>
<div id="bank">Bank Div</div>
<div id="fancy">Fancy Div</div>

CSS

#bank {display:none;}
#btn-bk {display:none;}

Javascript

    $('#btn').click(function(e){    
    $('#fancy, #btn').fadeOut('slow', function(){
        $('#bank, #btn-bk').fadeIn('slow');
    });
});

    $('#btn-bk').click(function(e){    
        $('#bank, #btn-bk').fadeOut('slow', function(){
            $('#fancy, #btn').fadeIn('slow');
        });
    });

Live DEMO that works

【问题讨论】:

  • 请在问题中包含所有代码,以防 jsfiddle 消失。

标签: javascript jquery hide fade


【解决方案1】:

你的问题在于这行代码:

$('#bank').replace('<div id="fancy"></div>').fadeIn('slow');

jQuery 中没有 .replace() 函数。删除它就可以了:

$('#bank').fadeIn('slow');

在这里查看:http://jsfiddle.net/3XwZv/57/

【讨论】:

  • 打败我 :) +1 速度
  • 啊!!太棒了...我已经尝试了这么久,不明白为什么它没有显示银行...干杯人!再次感谢
  • is 有一个 .replace() 函数,这就是你要找的吗?查看docs.jquery.com 的文档,它们非常有帮助。我经常只是扫描功能的类别,看看它们是否有我想要的。阅读有趣的发声函数会学到很多东西。
【解决方案2】:

使用以下 jQuery 代码:

$('#btn').click(function(e){    
    $('#fancy').fadeOut('slow', function(){
        $('#bank').fadeIn('slow');
    });
});

【讨论】:

    【解决方案3】:

    你应该使用 html() 而不是 replace()。另外,假设您想用以下 html 替换您的银行 div:

    <div id="fancy"></div> 
    

    试试这个

    $('#btn').click(function(e){    
        $('#fancy').fadeOut('slow', function(){
            $('#bank').html('<div id="fancy"></div>').fadeIn('slow');
        });
    });
    

    【讨论】:

    • 我实际上偶然发现了另一个问题——我需要一个后退按钮,所以当它点击时,银行再次淡出,然后花哨又淡入......这很容易实现吗?如果可能的话,如果您能将它添加到小提琴中,我将不胜感激?
    • 不确定这是不是你想要的……但你可以试一试……jsfiddle.net/3XwZv/62
    • 谢谢 bipen :D 工作就像一个魅力。完美!
    • 我很高兴... :)... 我认为投票可以帮助我.. :) :)
    猜你喜欢
    • 2014-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多