Check out this code :
<a href="#" id="link">Link</a>
<span>Moving</span>
$('#link').click(function () {
    console.log("Enter");
    $('#link').animate({ width: 200 }, 2000, function() {
         console.log("finished");            
    });    
    console.log("Exit");    
});
As you can see in the console, the "animate" function is asynchronous, and it "fork"s the flow of the event handler block code. In fact :
$('#link').click(function () {
    console.log("Enter");
    asyncFunct();
    console.log("Exit");    
});
function asyncFunct() {
    console.log("finished");
}
follow the flow of the block code!
If I wish to create my function asyncFunct() { } with this behaviour, how can I do it with javascript/jquery? I think there is a strategy without the use of  setTimeout()
    
 
     
     
     
     
     
     
     
     
     
     
     
     
    