Stefan: jQuery auf Funktion warten?

Hi zusammen,

ich habe eine doofe Anfängerfrage, bei der ich trotz aller Suche einfach keine Lösung finde :s

ich habe eine Funktion "preloader" die "return true/false" zurückgibt.

Nun soll eine andere Funktion den Preloader starten und auf diesen warten...
ich dachte eigtl das geht so:

  
function test(){  
if (preloader()){  
alert("test");  
}  
else {  
alert("error");  
}  
}  

im Preloader habe ich einige AJAX sachen die etwas dauern....
Leider wartet die IF-Abfrage nicht auf das ergebnis sondern geht gleich auf "error", wenn es minimal länger dauert.

Wo habe ich meinen Denkfehler?

DANKE im Voraus!

  1. Hi,

    Nun soll eine andere Funktion den Preloader starten und auf diesen warten...
    ich dachte eigtl das geht so:

    function test(){
    if (preloader()){
    alert("test");
    }
    else {
    alert("error");
    }
    }

    
    >   
    > im Preloader habe ich einige AJAX sachen die etwas dauern....  
    > Leider wartet die IF-Abfrage nicht auf das ergebnis sondern geht gleich auf "error", wenn es minimal länger dauert.  
      
    Deine Funktion preloader wartet nicht, bis die AJAX-Antworten da sind. Das erste A steht für Asynchronous ...  
      
    cu,  
    Andreas
    
    -- 
    [Warum nennt sich Andreas hier MudGuard?](http://MudGuard.de/)  
    [O o ostern ...](http://ostereier.andreas-waechter.de/)  
      
    Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.  
    
    
    1. Deine Funktion preloader wartet nicht, bis die AJAX-Antworten da sind. Das erste A steht für Asynchronous ...

      Genau!
      Nachdem die Ajax Sachen geladen wurden musst du eine bestimmte funktion (Callback) aufrufen lassen. afterpreload z.B. Bei jquery kann man diese callback funktion dann angeben. Wenn das Ajax fertig ist wird die autoamtisch mit den empfangenen Daten aufgerufen.

      Gruß
      der hoffentlich hilfreiche
      T-Rex

      1. Nachdem die Ajax Sachen geladen wurden musst du eine bestimmte funktion (Callback) aufrufen lassen. afterpreload z.B. Bei jquery kann man diese callback funktion dann angeben. Wenn das Ajax fertig ist wird die autoamtisch mit den empfangenen Daten aufgerufen.

        Wobei man hier zwischen "success" und "complete" unterschieden muss - "complete" bedeutet "ich habe fertig" und erhält nur den Status, während "success" bedeutet, dass der Request erfolgreich war - diese Funktion/Methode erhält als erstes Argument die empfangenen Daten.

        http://api.jquery.com/jQuery.ajax/