/ / einfacher preloader für jquery ladenfunktion - jquery, html

einfacher preloader für jquery ladenfunktion - jquery, html

Ich weiß, wie man eine Seite in jquery lädt, und irgendwie weiß ich, wie man Erfolg benutzt, aber was, wenn diese Seite gescheitert ist

Ich bin auf der Suche nach einer Möglichkeit, Loader Image vor der geladenen Seite anzuzeigen, und wenn die Seite fehlgeschlagen ist, eine Nachricht anzuzeigen

Das ist die Funktion, die ich schrieb:

$(document).ready(function(){

$("#loading").html("<img src="/images/images/preload.gif" />");
$(".thumb").load("stat.html");

});

Jetzt möchte ich es so ändern, dass es Preloader und die Nachricht zeigt, wenn es fehlgeschlagen ist

Antworten:

2 für die Antwort № 1

Die Ladefunktion hat einen Rückruf, der den Status der Anforderung angibt. Es sieht ungefähr so ​​aus ...

$(selector).load(url,[],[callbackFn(response,success,xhr)]);

So können Sie so etwas tun:

$(".thumb").load("stat.html",function(response,status,xhr){
if(status == "error") {
//Something went wrong, have your error fallback code here
}
});

Hier finden Sie ein Beispiel: http://jsbin.com/uxisa3/2/edit


0 für die Antwort № 2

Versuchen Sie es mit $.ajax Anstatt von post damit Sie mit Hilfe von Callback-Methoden mehr Kontrolle über den Lebenszyklus haben. In Ihrem Fall können Sie verwenden beforeSend, error, complete Rückrufe (die selbsterklärend sind)

$.ajax({
type: "POST",
url: "stat.html",
data: "name=John&location=Boston",
beforeSend: function(){
$("#loading").html("<img src="/images/images/preload.gif" />");
},
success: function(msg){
alert( "Data Saved: " + msg );
},
error: function(e){alert(e);}
});