2015-09-23 15 views
6

Si consideri il seguente codice:Come posso controllare se una chiamata .load ajax ha caricato

var loadingHTML = $("<div style='width:100%;'> <h1>Loading...</h1></div>"); 
loadingHTML.hide(); 
$(".row").append(loadingHTML); 
loadingHTML.fadeIn('slow'); 
$(".row").append($("<div>").load("get-more-images.php?start=36&end=36")); 
// loadingHTML.hide(); 

Ho una pagina di immagini e sparerà questo quando l'utente scorre in basso nella pagina di caricare più immagini come loro scorrono. La speranza è di visualizzare "Caricamento in corso ..." fino a quando l'immagine non è apparsa, quindi nasconderlo di nuovo, eseguendo il codice sopra mostrerà quindi nascondere il testo così velocemente da non poterlo vedere, c'è un modo per verificare se l'evento .load ha finito?

+1

diano un'occhiata al la documentazione: http://api.jquery.com/load/ –

risposta

7

Assegna al carico una richiamata ed esegue quello che vuoi.

$(".row").append($("<div>").load("get-more-images.php?start=36&end=36", function() { 
    console.log('load complete'); 
})); 

Maggiori informazioni - http://api.jquery.com/load/

+0

downvotes? Perché? –

5

È possibile utilizzare una funzione di callback:

var loadingHTML = $("<div style='width:100%;'> <h1>Loading...</h1></div>"); 
 
loadingHTML.hide(); 
 
$(".row").append(loadingHTML); 
 
loadingHTML.fadeIn('slow'); 
 
$(".row").append($("<div>").load("get-more-images.php?start=36&end=36"), function() { 
 
    console.log("images load"); 
 
});

In documenti è possibile controllare i parametri che ci vuole:

.210

.load (url [, dati] [completa])

  • url Tipo: String Una stringa contenente l'URL a cui viene inviata la richiesta.

  • dati tipo: PlainObject o String Un oggetto o una stringa semplice che viene inviata al server con la richiesta. completo Tipo:

  • Funzione (stringa di rispostaText, stringa textStatus, jqXHR jqXHR) Una funzione di callback che viene eseguita al termine della richiesta.

Riferimenti

.load()

+1

Più uno per quello extra (documenti + jfiddle), evviva! – Aphire

Problemi correlati