2017-02-09 87 views
0

JQuery的有关淡入功能手册:淡入不是等待动画结束

$("#book").fadeIn("slow", function() { 
    // Animation complete 
}); 

然而我的网页,我的淡入功能中的代码不会被触发一次“动画完成”上,但马上,我不明白为什么。

$("#contact-callback").fadeIn(5000, function() { 
    $("#callback-message").fadeIn(150); 
    $("##callback-dismiss").fadeIn(150); 
    $("#tab-contact button .fa").removeClass('fa-circle-o-notch fa-spin').addClass('fa-paper-plane'); 
    $('#tab-contact #contact-form')[0].reset(); 
}); 

,我相信我也跟着在说明书中所述的具体型号,但它看起来一定是错了地方,为什么我的淡入功能代码里面等待要完成的动画?

+1

,你说哪个动画是不完整的下一个运行之前?你是在谈论'#contact-callback'还是嵌套在回调中的2'$ .fadeIn()?顺便说一句,你有一个错字'## callback-dismiss' - 你也应该发布相关的HTML,为我们创建一个可验证的演示http://stackoverflow.com/help/mcve –

+0

似乎在一个小测试用例中工作第一个元素是:https://jsfiddle.net/L649z23k/。你指的是哪一部分? “contact-callback”元素最初是否设置为“display:none”? –

+0

你好,根据手册,我认为主FadeIn函数(#contact-callback)中的所有内容都应该只在动画完成时触发?感谢您的错字,我会马上添加演示! – eloism

回答

1

你的代码看起来很好,你的问题可能在你的代码中的其他地方。看到这个例子:

$("#contact-callback").fadeIn(2000, function() { 
 
    console.log("finished"); 
 
});
#contact-callback { 
 
    width: 100px; 
 
    height: 100px; 
 
    background: green; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div id="contact-callback" style="display: none;"></div>

+0

感谢,确实有一个问题是一个错字错误,但reset()函数似乎仍然开始早,之后快速搜索它似乎不是孤立的我,我可以尝试一个替代重置(),看看它是怎么回事! – eloism