Dies ist eine Variable, die jQuery intern verwendet, aber keinen Grund zum Ausblenden hatte. Sie kann daher verwendet werden. Nur ein Kopf hoch, es wird die jquery.ajax.activenächste Veröffentlichung . Es gibt keine Dokumentation, weil sie verfügbar ist, aber nicht in der offiziellen API. Viele Dinge sind tatsächlich so, wie jQuery.cache(wo alles jQuery.data()hingeht).
Ich vermute hier durch die tatsächliche Nutzung in der Bibliothek, es scheint ausschließlich zur Unterstützung da zu sein $.ajaxStart()und $.ajaxStop()(was ich weiter erläutern werde), aber es ist ihnen nur wichtig, ob es 0 ist oder nicht, wenn eine Anfrage startet oder stoppt. Da es jedoch keinen Grund gibt, es auszublenden, können Sie die tatsächliche Anzahl der gleichzeitig laufenden AJAX-Anforderungen anzeigen.
Wenn jQuery eine AJAX-Anforderung startet, geschieht Folgendes :
if ( s.global && ! jQuery.active++ ) {
jQuery.event.trigger( "ajaxStart" );
}
Dies führt dazu, dass das $.ajaxStart()Ereignis ausgelöst wird. Die Anzahl der Verbindungen ist gerade von 0 auf 1 gestiegen ( jQuery.active++nicht 0 nach dieser und !0 == true). Dies bedeutet, dass die erste der aktuellen gleichzeitigen Anforderungen gestartet wurde. Das gleiche passiert am anderen Ende. Wenn eine AJAX - Anforderung stoppt (wegen eines beforeSendAbbruchs überreturn false oder einen Ajax - Aufruf completeFunktion läuft ):
if ( s.global && ! --jQuery.active ) {
jQuery.event.trigger( "ajaxStop" );
}
Dies führt dazu, dass das $.ajaxStop()Ereignis ausgelöst wird. Die Anzahl der Anforderungen ist auf 0 gesunken, was bedeutet, dass der letzte gleichzeitige AJAX-Aufruf beendet wurde. Die anderen globalen AJAX-Handler feuern dort ebenfalls ein.