0

我正在创建一个灯箱类型的东西,我正在使用 jQueryfadeInfadeOut功能来显示放大的div元素。但是,当我调用fadeOut放大div的时,较小的也会消失,因为完成后会fadeOut设置。display: none有没有办法在不影响原件的情况fadeInfadeOut复制一个 div?请记住,这div不包含图像,而是包含大量其他divs和文本。

这是我当前的 jQuery:

$("#magnify").on("click", function(event){
    $("#black-overlay").addClass("show");
    $(".close").addClass("show");
    $("#inner-box").addClass("enlarge").fadeIn(600);
});

$(".close").on("click", function(event){
    $("#inner-box").fadeOut(600);
});

HTML 很长,所以我为您删除了它,但我希望里面的所有内容都放大并且inner-box单击 某些元素时:fadeInfadeOut

<div id="outter-box" class="activeSlide">
    <div id="magnify"><a href="#"><p>Enlarge</p></a></div><!--/#magnify-->

    <div id="inner-box">    
        <div class="close">
            <a href="#"><img src="img/close.gif" width="22px" height="22px" /></a>
        </div>
        <div id="content">
            <div class="inside">
                <p>A buttload of stuff in here</p>
            </div><!--/.inside-->
        </div><!--/#content-->
    </div><!--/.inner-box-->
</div><!--/#outter-box-->
4

1 回答 1

1

你可以试试:

.animate({opacity: 0}, 400);

我不确定浏览器前缀属性,但这可能有效:

.animate({MozOpacity: 0}, 400); // Firefox
.animate({WebkitOpacity: 0}, 400); // Chrome, Safari
.animate({OOpacity: 0}, 400); // Opera
.animate({msOpacity: 0}, 400); // Internet Explorer
于 2013-04-19T19:53:15.683 回答