What's the difference between : 1. (ajaxStart and ajaxSend) and 2. (ajaxStop and ajaxComplete)? What's the difference between : 1. (ajaxStart and ajaxSend) and 2. (ajaxStop and ajaxComplete)? ajax ajax

What's the difference between : 1. (ajaxStart and ajaxSend) and 2. (ajaxStop and ajaxComplete)?


.ajaxStart() and .ajaxStop() are for all requests together, ajaxStart fires when the first simultaneous request starts, ajaxStop fires then the last of that simultaneous batch finishes.

So say you're making 3 requests all at once, ajaxStart() fires when the first starts, ajaxStop() fires when the last one (they don't necessarily finish in order) comes back.

These events don't get any arguments because they're for a batch of requests:

.ajaxStart( handler() ).ajaxStop( handler() )

.ajaxSend() and .ajaxComplete() fire once per request as they send/complete. This is why these handlers are passed arguments and the global/batch ones are not:

.ajaxSend( handler(event, XMLHttpRequest, ajaxOptions) ).ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) )

For a single documentation source, the Global Ajax Events section of the API is what you're after.