只有当另一个完成后才能运行函数

只有当另一个完成后才能运行函数

问题描述:

我有这个功能,并且我想只在div滚动到顶部时才添加.hidden类。我知道我可以使用SetTimeout,但它会是随机的,我想确保div滚动到顶部时消失。只有当另一个完成后才能运行函数

$(".more").on("click", function() { 
 
    $("#wait").animate({ 
 
     scrollTop: 0 
 
    }), 
 
    $(".more").toggleClass("nascosto"), 
 
    $("#wait").toggleClass("hidden") 
 
});
.more { 
 
    cursor: pointer; 
 
    position: fixed; 
 
    font-size: 30px; 
 
    top: 10px; 
 
    left: 10px; 
 
} 
 
#wait { 
 
    font-size: 30px; 
 
    right: 10px; 
 
    width: 50%; 
 
    position: fixed; 
 
    overflow-y: scroll; 
 
    height: 100vh; 
 
} 
 
#about { 
 
    overflow-y: scroll; 
 
} 
 
.hidden { 
 
    opacity: 0; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class=more>click</div> 
 
<div id="wait"> 
 
    <div id=about 
 
    ">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</div></div>

+0

您是否阅读过['.animate()'](http://api.jquery.com/animate/)的文档?你的答案在那里。 –

+0

你需要使用animate()的回调函数....检查这... http://api.jquery.com/animate/ – RohitS

如果你是指在.animate() jQuery的文档,你会看到,你可以提供一个complete功能。

http://api.jquery.com/animate/

完整类型:Function()一次动画调用一个功能是 完整,称为每一个匹配元素一次。

+0

谢谢你们我会看看:) – Federico