Montrer le chargement de l'image, tout $.ajax est effectuée
Je me demandais simplement comment faire pour afficher une image qui indique que la demande asynchrone est en cours d'exécution. J'utilise le code suivant pour effectuer une demande asynchrone:
$.ajax({
url: uri,
cache: false,
success: function(html){
$('.info').append(html);
}
});
Des idées?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez, bien sûr, de la montrer avant de faire la demande, et de le cacher après avoir terminé:
D'habitude, je préfère la plus générale de la solution de liant au mondial ajaxStart et ajaxStop événements, de façon qu'il présente pour tous ajax événements:
document
seulement. Voir stackoverflow.com/questions/2275342/...Utiliser de l'ajax de l'objet beforeSend et des fonctions complètes. C'est mieux de montrer le gif à partir de l'intérieur de beforeSend de sorte que tout le comportement est encapsulé dans un objet unique. Soyez prudent sur la façon de masquer le gif à l'aide de la réussite de la fonction. Si la requête échoue, vous aurez probablement encore à masquer le gif. Pour ce faire, utilisez la fonction Complète. Il devrait ressembler à ceci:
Code HTML :
Code CSS:
JQUERY Code:
"L'image" en général, les gens d'apparaître lors d'un appel ajax est un gif animé. Depuis il n'y a aucun moyen de déterminer le pourcentage d'achèvement de la requête ajax, les gifs animés utilisés sont à durée indéterminée filateurs. C'est juste une image de répéter plus et plus comme un ballon de cercles de différentes tailles. Un bon site pour créer votre propre personnalisé de durée indéterminée spinner est http://ajaxload.info/
Je pense que cela pourrait être mieux si vous avez des tonnes de $.les appels ajax
REMARQUE:
Si vous utilisez des feuilles de style CSS. L'élément que vous souhaitez montré alors que l'ajax est l'extraction de données à partir de votre back-end code doit être comme ceci.
J'ai toujours aimé le
BlockUI
plugin: http://jquery.malsup.com/block/Il vous permet de bloquer certains éléments d'une page ou de la page entière, tandis que une requête ajax est en cours d'exécution.
Avant que votre appel soit insérer le chargement de l'image dans un div/span quelque part et puis sur le succès de la fonction de suppression de cette image. Alternativement, vous pouvez définir une classe css comme le chargement qui pourrait ressembler à ceci
Puis d'attribuer cette classe à un span/div et la vider dans la réussite de la fonction
quelque chose comme ceci:
Vous pouvez ajouter ajax début et complète de l'événement, ce travail est pour quand vous cliquez sur le bouton de l'événement
JS:
CSS:
HTML: