JQuery:添加类后的淡出?

时间:2013-06-26 16:33:47

标签: javascript jquery css html5 addclass

我试图在添加一个类之后淡出图像,但由于某种原因它似乎避免了转换并在没有转换的情况下消失。

我试图添加的类只是一个将它倾斜90度的类。

这是我的jsfiddle,可以看到它的实际效果:http://jsfiddle.net/sqHxq/4/

这是我的代码:

HTML

<div id="logo" style="z-index:10">
<img src="http://s17.postimg.org/lb2un1g0r/image.png" alt ="">
</div>
<div id="other" style="z-index:0">
<img src="http://cdn1.iconfinder.com/data/icons/humano2/32x32/actions/old-edit-redo.png" alt="">
</div>

CSS

.tilt {
-webkit-transition: all 1s ease;
-moz-transition: all 1s ease;
-o-transition: all 1s ease;
-ms-transition: all 1s ease;
transition: all 1s ease;
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-o-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}

#logo {
cursor: pointer;
max-width: 241px;
position:absolute;
top:0;
left:0;
}

#other {
cursor: pointer;
max-width: 241px;
position:absolute;
top:0;
left:0;
}

的Javascript

$(document).ready(function () {
$('#logo').hide().delay(250).fadeIn(1000);
$('#other').hide().delay(750).fadeIn(1000);

$("#logo").click(function() {
        $('#logo').addClass("tilt").fadeOut(2000);
});
});

2 个答案:

答案 0 :(得分:3)

看起来褪色需要在图像而不是div上发生。现在你的div正在消失,然后设置为display:none;所以你需要淡化图像。

$(document).ready(function () {
    $('#logo').hide().delay(250).fadeIn(1000);
    $('#other').hide().delay(750).fadeIn(1000);

    $("#logo").click(function() {
            $('#logo').addClass("tilt");
            $('#logo').find('img').fadeOut(2000);
    });
});

答案 1 :(得分:2)

我采用了不同的方法,并为CSS过渡添加了不透明度。你可以在这里看到它:http://jsfiddle.net/sqHxq/10/我必须添加important才能让它注册,我知道这不完全正确。我认为通过一些调整,你可以比我做得更好。