首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery fadeIn / fadeOut而不是fadeToggle

问jQuery fadeIn / fadeOut而不是fadeToggle
EN

Stack Overflow用户
提问于 2015-10-11 17:59:28
回答 2查看 1.1K关注 0票数 1

我试图淡出一个图像,然后淡出另一个设置为display为none的图像。我可以使用fadeToggle来完成它,但是我想添加一个延迟,以避免第二个图像显示在第一个图像显示淡出之前。

在这里发现了这个问题,这类问题给了我答案:jQuery fadeToggle one after the other

这个答案使用不同的类,但是我想使用图像的父元素的类来淡出第一个子元素并在第二个子元素中淡出。然后,一旦它再次被点击,反转所有。

我有第一部分的工作,它淡出了图像1,然后在图像2中的延迟后消失。但是当我再次点击时,图像2就会褪色并消退。

这里是我的html:

代码语言:javascript
复制
<div class="item">
    <div class="target">
        <div class="visOn"><img src="http://placehold.it/300x300" alt=""></div>
        <div class="visOff"><img src="http://placehold.it/200x200" alt=""></div>
    </div>
</div>

下面是CSS:

代码语言:javascript
复制
    .visOff{
    display:none;

这是JS:

代码语言:javascript
复制
    $('.target').click(function(){

        var icon1 = $(this).children();
        var icon2 = $(this).children().eq(1);

        if (icon1.is(':visible')){
            icon1.fadeOut('slow');
            icon2.delay(500).fadeIn('slow');
        }
        else if (icon2.is(':visible')){
            icon2.fadeOut('slow');
            icon1.delay(500).fadeIn('slow');
        }
    });

这里有一个JSFiddle - https://jsfiddle.net/asantoni/ex30v3rh/

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-11 18:01:28

您需要用一个简单的CSS来解决问题。

https://jsfiddle.net/ex30v3rh/1/

代码语言:javascript
复制
.target {
    position: relative;
}
.target > div {
    position: absolute;
}
票数 3
EN

Stack Overflow用户

发布于 2015-10-11 18:21:00

你也可以尝试另一种方法,

我已经更新了JSFiddle,这不需要切换,但是可以使用类,好处是这还可以让您更好地控制元素的行为。

代码语言:javascript
复制
var switchFade = function(){
    e_on = $('.visOn');
    e_off = $('.visOff');

    $(e_on).animate({'opacity':0},'slow',function(){
        $(e_on).removeClass('visOn').addClass('visOff');
        $(e_off).addClass('visOn').removeClass('visOff');
        $(e_off).css({'opacity':0});
        $(e_off).animate({'opacity':1},'slow');
    });
};  


$('.target').click(function(){
    switchFade();
});

https://jsfiddle.net/ex30v3rh/5/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33068289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档