我希望动画(function handleScreen(mql)
)能够在完成后运行,页面(#splash,#name
)会在1秒后淡出。我尝试添加.promise
函数,但这似乎不起作用。任何帮助将非常感谢。 https://jsfiddle.net/Dar_T/eqdk82ru/1/
handleScreen(mql).promise().done(function() {
setTimeout(function() {
$("#name,#splash").fadeOut("slow");
}, 1000);
});
答案 0 :(得分:0)
取决于handleScreen
返回的内容:
在jQuery中:
.promise()方法返回一个动态生成的Promise 一旦绑定到集合的某个类型的所有操作解决, 排队与否,已经结束。
默认情况下,键入" fx",这意味着当>所选元素的所有动画都已完成时,将解析返回的Promise。 在jQuery中,您可以检查
:animated
。
所以它应该是:
handleScreen(mql).promise().done(function() {
setTimeout(function() {
$("#name,#splash").fadeOut("slow");
}, 1000);
});