这是我的代码。
$(".big").click(function() {
var widget = $(this).parent();
widget.children('.layer-dark').slideToggle(300).fadeTo(1, 0.97);
widget.children('.loading, .hm_sm_btn').show();
});
现在,如何在上一个操作.loading
完成后完成.hm_sm_btn show()
和slideToggle
操作。现在,这些项目立即显示出来,所以我正在寻找一些简单易行的方法来实现短暂延迟,并在slideToggle()
完成后显示它们。
希望我的问题很明确,谢谢。
答案 0 :(得分:3)
widget.children('.layer-dark').slideToggle(300, function() {
widget.children('.loading, .hm_sm_btn').show();
}).fadeTo(1, 0.97);
使用回调。
.slideToggle
文档清楚地显示,当slideToggle操作完成时,您可以传入回调以进行进一步的计算。
您应该花更多时间阅读文档。这很好。
答案 1 :(得分:0)
您可以为slideToggle
函数添加回调函数(请参阅documentation):
$(".big").click(function() {
var widget = $(this).parent();
widget.children('.layer-dark')
.slideToggle(300, function() { widget.children('.loading, .hm_sm_btn').show() })
.fadeTo(1, 0.97);
});
答案 2 :(得分:0)
也许你可以试试回调方式。
$(".big").click(function() {
var widget = $(this).parent();
widget.children('.layer-dark').slideToggle(300, function(){
widget.children('.loading, .hm_sm_btn').show();
}).fadeTo(1, 0.97);
});