Je vous soumets ce bout de code en desespoir de trouver mieux ...

j'ai tenté un callback dans le onclick mais ça ne passe pas

le but est d'attendre la fin d'une série d'animations pour lancer un callback

J'ai aussi explore la possibilité de faire une vérification dans un setInterval sur le is:animated, ça fonctionne mais je trouve ça super lourd !

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<script type="text/javascript">
$(function(){
   $("#go").data('finished',0)
	$("#go").click(function(){
	             $("#one").fadeOut('slow',function(){waitfor('counter',foo)} );
	        	   $("#two").fadeOut(5000, function() {waitfor('counter',foo)} );
	        			 })		
})
 
function waitfor(classe, launch){
 $('#go').data('finished',$("#go").data('finished')+1);
 if ( $('#go').data('finished') > $('.'+classe).length ){launch()}; 
 }
 
function foo(){ alert('finished') }
</script>
 
</head>
<body>
<div id='one' class="coutner">ljklkj</div>
<div id='two' class="counter">ljklkj</div>
<input id="go"  type='button' value='go' />
</body>