/ jednoduchý preloader pre funkciu jquery load - jquery, html

jednoduchý preloader pre funkciu jquery load - jquery, html

Viem, ako načítať stránku v jquery a nejako viem, ako používať úspech, ale čo keď táto stránka zlyhá

Hľadám spôsob, ako zobraziť obrázok nakladača pred načítanou stranou a ak sa stránka nepodarí zobraziť správu

toto je funkcia, ktorú som napísal:

$(document).ready(function(){

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

});

teraz ho chcem zmeniť takým spôsobom, ako ukazuje preloader a správa, ak sa nepodarilo

odpovede:

2 pre odpoveď č. 1

Funkcia načítania má spätné volanie, ktoré poskytuje stav žiadosti. Vyzerá to takto ...

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

Môžete tak urobiť takto:

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

Tu nájdete príklad: http://jsbin.com/uxisa3/2/edit


0 pre odpoveď č. 2

Skúste použiť $.ajax namiesto post takže budete mať väčšiu kontrolu nad životným cyklom pomocou metód spätného volania. Vo vašom prípade môžete použiť beforeSend, error, complete spätné volania (ktoré sú samozrejmé)

$.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);}
});