jQuery等待事件完成

当我有一个function时,我怎么能意识到这一点

$('.anyclass').slideToggle(1000); 

slideToggle完成后,程序是否在函数test()之外?

如果我这样写:

 $('.anyclass').slideToggle(1000); test(); 

…在slideToggle完成之前执行test()。

我怎么能意识到? 我不太了解jQuery ……

谢谢您的帮助! 此致,弗洛里安

编辑:结果你可以在这里看到: www.virtual-swiss-hornets.ch

您可以向jQuery函数添加回调函数。

 $('.anyclass').slideToggle(1000,function() { test(); }); 

幻灯片完成后,该function将仅触发。

我认为slideToggle应该接受第二个参数callback ,如下所示:

 $('.anyclass').slideToggle(1000, function() {/* do anything after animation is complete */}); 

实际上,对于您的特定情况,它很简单:

 $('.anyclass').slideToggle(1000, test); 

如果您只需要触发一次 ,请在 完成后检查jquery API

 $.when(('.anyclass').slideToggle(1000)).done(function() { test(); }); 

你需要的是使用回调函数

http://api.jquery.com/slideToggle/

.slideToggle([duration],[callback])

  ('.anyclass').slideToggle(1000, function() { test(); }); 

最好的方法应该是这个

$('#result').append($("

Result Sucess

")).slideToggle(5000,function(){$(this).remove()});