ArnisR Posted June 6, 2011 Report Share Posted June 6, 2011 Šādi izskatās JavaScript kods: $("button").click(function{ $.ajax({ url: "data.html", type: "HEAD", error: function() { $("#content").html('<p>File not found!</p>'); }, success: function() { $("#content").load("data.html"); } }); }); Ar šo AJAX funkciju tiek ielādēts ārējā faila saturs. Kādā veidā var uztaisīt loading'u šai funkcijai, ja gadījumā ielāde notiek pārāk ilgi? Paldies! Quote Link to comment Share on other sites More sharing options...
briedis Posted June 6, 2011 Report Share Posted June 6, 2011 (edited) Būtu jēdzīgi uzreiz rādīt loadingu, lai cilvēks saprot, ka kaut kas tiešām notiek. $("button").click(function{ //Te parādam loadingu $.ajax({ url: "data.html", type: "HEAD", error: function() { //Paslēpjam loadingu $("#content").html('<p>File not found!</p>'); }, success: function() { //Paslēpjam loadingu $("#content").load("data.html"); } }); }); EDIT: Un izskatās, ka tu te veic divus ajax pieprasījumus. Kāpēc? (otrs ir $.load(..)) Pietiek taču ar vienu! Edited June 6, 2011 by briedis Quote Link to comment Share on other sites More sharing options...
indoom Posted June 6, 2011 Report Share Posted June 6, 2011 pirms ajax ieliec timer = setTimeout(function(){ $('#loadingimg').fadeIn(); }, 2000); 2000 ir milisekundes, pēc cik ilga laika ieslēdzas loading bilde, ja nav ticis apturēts. Var likt arī 0, ja grib uzreiz. un iekšā ajax callbackos if (timer) { clearTimeout(timer); $('#loadingimg').fadeOut(); } vai arī var automatizēt pie katras ajax izpildes $('#loadingimg') .bind("ajaxSend",function(){$(this).fadeIn('fast');}) .bind("ajaxComplete",function(){$(this).fadeOut('slow');}); Quote Link to comment Share on other sites More sharing options...
ArnisR Posted June 6, 2011 Author Report Share Posted June 6, 2011 Būtu jēdzīgi uzreiz rādīt loadingu, lai cilvēks saprot, ka kaut kas tiešām notiek. $("button").click(function{ //Te parādam loadingu $.ajax({ url: "data.html", type: "HEAD", error: function() { //Paslēpjam loadingu $("#content").html('<p>File not found!</p>'); }, success: function() { //Paslēpjam loadingu $("#content").load("data.html"); } }); }); EDIT: Un izskatās, ka tu te veic divus ajax pieprasījumus. Kāpēc? (otrs ir $.load(..)) Pietiek taču ar vienu! Paldies! Tieši tas, kas vajadzīgs! Jā, tiešām 2 pieprasījumi, - bet kā tad dabūt faila saturu #content blokā ? Quote Link to comment Share on other sites More sharing options...
xPtv45z Posted June 6, 2011 Report Share Posted June 6, 2011 ... success: function(content) { //Paslēpjam loadingu $("#content").html(content); } ... Quote Link to comment Share on other sites More sharing options...
ArnisR Posted June 6, 2011 Author Report Share Posted June 6, 2011 ... success: function(content) { //Paslēpjam loadingu $("#content").html(content); } ... Hmm, šis variants neder, ja ielādē PHP failu nevis html... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.