【问题标题】:FadeIn and FadeOut jumps pageFadeIn 和 FadeOut 跳转页面
【发布时间】:2016-06-29 06:39:19
【问题描述】:

我有以下代码:

if (vm.theNextStep === true) {
    vm.theNextStep = false;
    vm.setSuccess = true;
    $('#theNextStep').fadeOut(500);
    $('#setSuccess').fadeIn(1500);
    $('#setSuccess').fadeOut(2000);
}
#setSuccess {
    padding-top: 2%;
    padding-bottom: 2%;
    background: #7CB130 url(check_white.png') no-repeat center;
    min-height: 85px;
    padding-right: 2%;
    margin-bottom: 2%;
}
<div id="setSuccess" ng-show="vm.paymentSuccess"></div>

页面在页面fadeIn 时跳转。我该如何解决?

【问题讨论】:

    标签: javascript jquery jquery-animate fadein page-jump


    【解决方案1】:

    页面跳转是因为你有两行代码一个接一个地运行,而不是等待一个完成它。

    可以将fadeIn代码放在第一个fadeOut的回调中:

    if (vm.theNextStep === true) {
        vm.theNextStep = false;
        vm.setSuccess = true;
        $('#theNextStep').fadeOut(500, function(){
            $('#setSuccess').fadeIn(1500).fadeOut(2000);
        });
    
    }
    

    【讨论】:

    • 另外,如果你想做一个“交叉淡入淡出”的效果,每个步骤容器使用position: absolute
    • @TrinhHoangAnh 绝对!这可以将所有元素包装在一个相对定位的元素中,这样就可以正常工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    • 2013-11-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多